1. babel-plugin-transform-decorators
Compile class and object decorators to ES5
babel-plugin-transform-decorators
Package: babel-plugin-transform-decorators
Created by: babel
Last modified: Mon, 13 Jun 2022 04:04:12 GMT
Version: 6.24.1
License: MIT
Downloads: 1,907,560
Repository: https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-decorators

Install

npm install babel-plugin-transform-decorators
yarn add babel-plugin-transform-decorators

babel-plugin-transform-decorators

Compile class and object decorators to ES5

Example

(examples are from proposal)

Simple class decorator

 @annotation
class MyClass { }

function annotation(target) {
   target.annotated = true;
}

Class decorator

 @isTestable(true)
class MyClass { }

function isTestable(value) {
   return function decorator(target) {
      target.isTestable = value;
   }
}

Class function decorator

 class C {
  @enumerable(false)
  method() { }
}

function enumerable(value) {
  return function (target, key, descriptor) {
     descriptor.enumerable = value;
     return descriptor;
  }
}

Installation

 npm install --save-dev babel-plugin-transform-decorators

Usage

Via .babelrc (Recommended)

.babelrc

 {
  "plugins": ["transform-decorators"]
}

Via CLI

 babel --plugins transform-decorators script.js

Via Node API

 require("babel-core").transform("code", {
  plugins: ["transform-decorators"]
});

References

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code