You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
770 B
40 lines
770 B
var events = {}
|
|
|
|
function on(name, self, callback) {
|
|
var tuple = [self, callback]
|
|
var callbacks = events[name]
|
|
if (Array.isArray(callbacks)) {
|
|
callbacks.push(tuple)
|
|
} else {
|
|
events[name] = [tuple]
|
|
}
|
|
}
|
|
|
|
function remove(name, self) {
|
|
var callbacks = events[name]
|
|
if (Array.isArray(callbacks)) {
|
|
events[name] = callbacks.filter((tuple) => {
|
|
return tuple[0] != self
|
|
})
|
|
}
|
|
}
|
|
|
|
function emit(name, data) {
|
|
var callbacks = events[name]
|
|
if (Array.isArray(callbacks)) {
|
|
callbacks.map((tuple) => {
|
|
var self = tuple[0]
|
|
var callback = tuple[1]
|
|
callback.call(self, data)
|
|
})
|
|
}
|
|
}
|
|
|
|
exports.on = on
|
|
exports.remove = remove
|
|
exports.emit = emit
|
|
/****
|
|
* Event:what说明:200表示vip兑换或者购买成功
|
|
*
|
|
*
|
|
*/
|