1.0.0 • Published 8 years ago

coffee-eventemitter v1.0.0

Weekly downloads
2
License
MIT
Repository
github
Last release
8 years ago

一个简易的事件对象

专门用于给对象添加订阅事件功能

API说明

初始化

原生对象继承

var foo = Object.create(SimpEvent);

//如果是比较低级一点的浏览器或者说有用到jQuery或者lodash之类的类库,可以用extend方法
var boo = $.extend({}, SimpEvent);
var bar = _.extend({}, SimpEvent);

函数继承

function Foo() {
}

Foo.prototype = SimpEvent;
Foo.prototype.constructor = Foo;

var foo = new Foo();

on

注册事件监听事件,on(事件名称,处理函数)

foo.on('test', function() {
  console.log(arguments);
});

once

on,只是会触发一次

off

取消监听事件,off(事件名称,处理函数),如果不带处理函数则取消该事件下的所有监听函数。

特别注意匿名函数是不可以取消的。

function haha() {}

foo.on('haha', haha);
foo.off('haha', haha);

emit

触发监听函数,emit(事件名称, 参数)

foo.emit('haha', 1, 2, 3);