js 事件的自定义和调用
在开头先说一下,推荐萌新们在学完vue的基础以后,可以去学一下node.js的内容
首先明确需求,明白一个方向
事件的自定义,使用一个自定义的函数去声明,他应该有两个参数
第一个参数是事件名称
第二个是事件
on('名称',function(){})
事件的调用的,应该也有两个参数
第一个参数是事件的名称,
第二个是参数是否需要将数据加入
emit('事件名称',参数)
核心部分
let eventList={
even:{
//存储事件 evenName[fun,fun,fun]
},
on:function(evenName,evenFun){
if(this.even[evenName]){//判断事件是否存在
this.even[evenName].push(evenFun);
}else{
this.even[evenName]=[];//不存在就创建
this.even[evenName].push(evenFun)
}
},
emit:function(evenName,evenMsg){
if(this.even[evenName]){//是否存在,存在就去调用事件中的函数
this.even[evenName].foreach((itemfun)=>{
itemFun(evenMsg)
})
}
}
}
事件的定义
eventList.on('Name',function(){
console.log('Hello word!');
})
事件的调用
eventList.emit('Name')
这样就完成了事件的调用,如果有什么不清楚的可以私信我或者评论区说一下