bui.emitter Class
Constructor
bui.emitter
()
Example:
js:
// 初始化
var emitter = bui.emitter();
// 自定义search事件监听
emitter.on("search",function(val){
search(val);
});
$("#id").click(function (e) {
var val = $("input").val();
emitter.trigger("search",val);
})
// 搜索
function search(val) {
bui.ajax({
url: "",
data: {
keyword: val
}
}).then(function () {
// 拿到数据返回渲染
})
}
Methods
notify
()
通知所有变更
Example:
$("#id").click(function (e) {
emitter.notify();
})
off
(
-
[type] [ 自定义事件名称]
-
[callback] [ 触发的回调]
取消事件
Parameters:
-
[type] [ 自定义事件名称]
String optional -
[callback] [ 触发的回调]
Function optional
Example:
// 取消所有search事件
emitter.off("search");
on
(
-
[type] [ 自定义事件名称]
-
[callback] [ 触发的回调]
监听自定义事件
Parameters:
-
[type] [ 自定义事件名称]
String optional -
[callback] [ 触发的回调]
Function optional
Example:
// 自定义search事件监听
emitter.on("search",function(val){
search(val);
});
one
(
-
[type] [ 自定义事件名称]
-
[callback] [ 触发的回调]
只监听在第一次的时候触发,触发以后不再执行
Parameters:
-
[type] [ 自定义事件名称]
String optional -
[callback] [ 触发的回调]
Function optional
Example:
// 监听一次
emitter.one("search",function(val){
search(val);
});
trigger
(
-
[type] [ 自定义事件名称]
-
[arguments] [ 需要传给自定义事件的参数,可以有多个]
触发事件
Parameters:
-
[type] [ 自定义事件名称]
String optional -
[arguments] [ 需要传给自定义事件的参数,可以有多个]
String | Object | Number optional
Example:
$("#id").click(function (e) {
emitter.trigger("search",e);
})
wait
(
-
[type] [ 自定义事件名称]
-
[callback] [ 触发的回调]
只监听在第一次的时候触发,触发以后不再执行
Parameters:
-
[type] [ 自定义事件名称]
Array optional -
[callback] [ 触发的回调]
Function optional
Example:
// 监听一次
emitter.wait(["search","list"],function(search,list){
// console.log(search);
// console.log(list);
});
waited
(
-
[type] [ 自定义事件名称]
-
[callback] [ 触发的回调]
只监听在第一次的时候触发,触发以后不再执行, 跟wait的区别在于返回的实例, wait返回了参数+实例
Parameters:
-
[type] [ 自定义事件名称]
Array optional -
[callback] [ 触发的回调]
Function optional
Example:
// 监听一次
emitter.waited(["search","list"],function(search,list){
// console.log(search);
// console.log(list);
});