是否可以像JQuery中那样使用带有事件的名称空间?
喜欢能够做到:
$.on('click.namespace')
$.on('change.namespace')
$.off('.namespace') // unregister both
答案 0 :(得分:1)
否,通常在Vue中不需要:
在模板中使用@eventName="handler"
时,Vue会处理事件处理程序的注册和注销。
而且由于您可以为$emit
个组件指定事件的名称,因此不会发生命名冲突。
要在组件销毁时手动注册和注销事件监听器,请执行以下操作:
emitter.$on(component.handleClick)
component.$on("$destroy", () => emitter.$off('click', component.handleClick))
在methods:
中声明handleClick,以创建绑定到组件的唯一回调。