使用频率 | 高 |
所属模型 | hooker |
成员类型 | 公有成员函数 |
Object hook(Object hooks);
Object hook(String name,Function hookFunc);
Object hook(Array names,Function hookFunc);
名称 | 类型 | 描述 |
name | String | 钩子的名称,可以支持用空格分开的多个名称 |
names | Array | 包含钩子名称的数组 |
hookFunc | Function | 钩子被触发时候执行的函数 |
hooks | Object | 钩子名称与钩子函数对应的Object对象 |
//创建一个模块,使用hooker模型
var module1 = Std.module({
model:"hooker",
public:{
food:function(name){
if(this.act("eat",name) == false){
return;
}
alert("food name: " + name);
}
}
});
//创建模块的实例对象
var instance1 = new module1();
//添加eat这个钩子
instance1.hook("eat",function(name){
if(["shit","maggot"].has(name)){
console.log(name + " is not food!");
return false;
}
});
//在控制台中尝试一下这段代码
instance1.food("shit");