onfire.js 是一個很簡潔的事件分發,事件訂閱和發佈的Javascript庫(僅僅
0.9kb
),簡潔實用。vue
Github地址:https://github.com/hustcc/onfire.jsreact
能夠用於:git
簡單的事件分發;github
在 react / vue.js / angular 用於跨組件的輕量級實現;npm
事件訂閱和發佈;數組
在線示例,點擊這裏;English Version Readme. Click Here。ui
1. on(event_name, callback)
this
綁定事件,參數爲 event_name
和 callback
, 當有名字爲event_name
的事件發生的時候,callback
方法將會被執行。spa
這個方法會返回一個eventObj
,這個能夠用於使用un(eventObj)
方法來取消事件綁定。code
2. one(event_name, callback)
綁定(訂閱)事件,參數爲 event_name
with callback
. 當被觸發一次以後失效。只能被觸發一次,一次以後自動失效
。
3. fire(event_name, data)
觸發名字爲 event_name
的事件,而且賦予系列變量datas
爲callback
方法的輸入值。
4. fireSync(event_name, data)
同步的方式觸發名字爲 event_name
的事件,而且賦予系列變量datas
爲callback
方法的輸入值。
5. un(eventObj / event_name)
取消事件綁定。能夠僅僅取消綁定一個事件回調方法,也能夠直接取消所有的事件。
返回全部的事件名稱數組。
6. clear()
清空全部事件。
1. 引入js文件
npm install onfire.js
可使用 <script>
標籤直接引入; 也可使用 require
或者 import
關鍵字引入,會獲得全局變量 onfire。
import onfire from 'onfire.js'; // or var onfire = require("onfire.js");
2. 簡單使用
使用方法 on
來訂閱事件, 使用 un
來取消訂閱, 使用 fire
方法來觸發事件。
import onfire from 'onfire.js'; // 綁定事件 var eventObj = onfire.on('test_event', function(data1, data2) { console.log('this is a event 1'); }); var eventObj2 = onfire.on('test_event', function(data1, data2) { console.log('this is a event 2'); }); // 觸發事件 onfire.fire('test_event', 'test_data1', 'test_data2'); // 取消綁定 onfire.un(eventObj); // 取消綁定這個事件. onfire.un('test_event'); // 取消綁定全部的 `test_event`.
MIT