2.0.2 • Published 8 years ago
babel-plugin-class-autobind v2.0.2
babel-plugin-class-autobind
Please note that this will add implicit magic to your code
This plugin will autobind all handlers for components listed in directive '@autobind'
prefixes = on, _on, handle, _handle;
Example
In
'@autobind Component';
class Component {
constructor() {
}
handleMe(){}
onMe(){}
noBind(){}
// @autobind-ignore
onIgnored(){}
}Out
class Component {
constructor() {
this.handleMe = this.handleMe.bind(this);
this.onMe = this.onMe.bind(this);
}
handleMe() {}
onMe() {}
noBind() {}
onIgnored() {}
}Installation
$ npm install babel-plugin-class-autobindOptions
if no components are listed in directive - all handlers in file classes will be bound to class instance. (equal to @autobind *)
Usage
Via .babelrc (Recommended)
.babelrc
{
"plugins": ["class-autobind"]
}Via CLI
$ babel --plugins class-autobind script.jsVia Node API
require("babel-core").transform("code", {
plugins: ["class-autobind"]
});