Vue.js 如何在Vue中创建自定义lodash throttle事件修改器?

Vue.js 如何在Vue中创建自定义lodash throttle事件修改器?,vue.js,events,lodash,Vue.js,Events,Lodash,在VueJS中,有用于单击和键事件的事件修饰符,这些事件允许类似于单击.阻止,单击.一旦,键.up 如何创建自定义事件修饰符 更具体地说,如何创建mousemove.throttle事件修饰符,以便在每次将该修饰符添加到事件时应用lodash throttling?其中一个选项是创建类似的自定义指令 Vue.directive('throttled-on'{ 绑定(el、绑定、vnode){ const handler=throttle(1000,binding.value) let type

在VueJS中,有用于
单击
事件的事件修饰符,这些事件允许类似于
单击.阻止
单击.一旦
键.up

如何创建自定义事件修饰符


更具体地说,如何创建
mousemove.throttle
事件修饰符,以便在每次将该修饰符添加到事件时应用lodash throttling?

其中一个选项是创建类似的自定义指令

Vue.directive('throttled-on'{
绑定(el、绑定、vnode){
const handler=throttle(1000,binding.value)
let type=binding.arg
el.addEventListener(类型、处理程序)
}
})
var app=新的Vue({
el:“#应用程序”,
方法:{
myMethod(){console.log('Called')}
}
})


谢谢你的回答。因此,基本上,您建议放弃自定义事件修饰符的想法,而是使用自定义指令来解决相同的问题。这似乎是一个合乎逻辑的选择。出于好奇,除了Vue的
v-on
指令之外,还可以在自定义指令上创建自定义事件修饰符吗?这是一个有趣的问题,我不知道。如果有人能像你一样使用
binding.modifiers
展示如何实现它,我会很高兴。值得注意的是,修饰符是布尔状态,因此创建限制的事件可能比我预期的要困难一些,因为限制的等待时间值必须是静态的。但是,似乎无法在正常事件上使用修饰符,因为您无法挂接到本机
v-on
指令。