SearchBar组件内定义的这个方法,如何触发
来源:8-3 首页搜索组件优化
weixin_慕设计2511234
2019-08-26
onSearchBarClick() {
this.$emit(‘onClick’);
}
SearchBar组件内定义的这个方法,如何触发?有何意义?父组件里面有单击事件,也有自己定义的对应的方法处理,还需要在组件内定义这个多余的方法吗?
写回答
1回答
-
hi,这里用到了子组件的事件订阅机制,这个机制类似 node.js 的 events 机制,简单来说有以下几个要点:
事件的触发来源于子组件:这里是点击了子组件 SearchBar 触发了事件;
事件的处理来源于父组件:实际处理点击行为的方法定义在父组件中;
这时就出现一个难题,当用户子组件后,子组件如何通知父组件呢?Vue 给出的解决方法就是 this.$emit()方法,你给的代码中,子组件会调用父组件绑定到子组件上的 onClick 方法,这个方法可以对应父组件中一个具体方法,这个方法名称不一定是 onClick,可以更名
012019-08-27
相似问题