https://github.com/secbone/react-eventable
An event decorator for react component
https://github.com/secbone/react-eventable
Last synced: about 1 year ago
JSON representation
An event decorator for react component
- Host: GitHub
- URL: https://github.com/secbone/react-eventable
- Owner: Secbone
- Created: 2016-10-18T06:31:03.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2017-03-28T05:16:45.000Z (about 9 years ago)
- Last Synced: 2025-03-03T09:38:54.763Z (over 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 1.95 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# react-eventable
[![NPM version][npm-image]][npm-url]
[![Downloads][downloads-image]][downloads-url]
An event decorator for react component
## Install
```
npm install react-eventable
```
## Usage
```javascript
import {Component} from "react";
import eventable from "react-eventable";
@eventable
class MyComponent extends Component {
clickHandler() {
this.emit("click", {foo: "foo"});
}
componentDidMount() {
this.on("click", someMethod);
}
}
...
```
#### Webpack Config
use `babel-plugin-transform-decorators-legacy`
```javascript
// webpack.config.js
...
test: /\.jsx$/,
loaders: [
{
loader: "babel-loader",
query: {
presets: ["es2015", "react"],
plugins: ["transform-decorators-legacy"],
}
},
]
...
```
[npm-image]: https://img.shields.io/npm/v/react-eventable.svg?style=flat-square
[npm-url]: https://npmjs.org/package/react-eventable
[downloads-image]: http://img.shields.io/npm/dm/react-eventable.svg?style=flat-square
[downloads-url]: https://npmjs.org/package/react-eventable