javascript - Vue js 事件中的命名空间
问题描述
是否可以像在 JQuery 中那样拥有带有事件的命名空间?
喜欢能够做到:
$.on('click.namespace')
$.on('change.namespace')
$.off('.namespace') // unregister both
解决方案
不,在 Vue 中通常不需要:
在模板中使用@eventName="handler"
时,Vue 处理事件处理程序的注册和注销。
并且因为您可以指定组件的事件名称,所以$emit
您不会有命名冲突。
在组件被销毁时手动注册和注销事件监听器:
emitter.$on(component.handleClick)
component.$on("$destroy", () => emitter.$off('click', component.handleClick))
methods:
在创建绑定到组件的唯一回调中声明 handleClick 。
推荐阅读
- javascript - localStorage 数组排序
- entity-framework - IdentityDbContext 如何在运行时将其表添加到现有数据库?
- azure - 将 Azure 多重身份验证构建到自定义应用 (SDK)
- linux - 如何grep具有变量的确切字符串
- r - ggplot 的替代绘图解决方案,每个面板都有图例?
- uwp - WriteClientCharacteristicConfigurationDescriptorAsync 中的 System.ObjectDisposedException
- java - 为什么这会返回“dataModel 必须为非空”错误?
- javascript - 这个正则表达式与最后两行不匹配,但理论上它应该
- javascript - 我如何更改 eslint 解析设置
- python - Python通过标识符组合可变数量的列表