我正在尝试创建一个与v-on具有相同行为的指令(为了学习)。 我已经可以使用它将函数作为值传递,但是我想知道如何将代码作为值传递。
使用示例:
<button v-onward:click="print">Test 1</button>
<button v-onward:click="testNumber = testNumber + 1">Test 2</button>
哪里&#34;打印&#34;是一个函数和&#34; testNumber&#34;是组件数据中的数字。
我想做什么,但没有成功:
directives:{
'onward': {
bind(el, binding, vnode){
if(typeof binding.value === 'function')
el.addEventListener(binding.arg, binding.value);
else
el.addEventListener(binding.arg, function(){
binding.value
});
}
}
}