问题:有个要求,需要统一组件的事件传递参数,如
// 原有组件抛出的事件
this.$emit('change', params1);
// 期望改写成
this.$emit('change', this, params1);
// 如果上一种无法实现,这种写法也能将就
this.$emit('xxx-change', this, params1);
因为要改写很多事件,又不能直接改原有的代码,如何快速实现?
思路1:事件自身监听自身的事件,然后另外传递事件。
问题:但是这只是改了一种事件,没能做到所有事件都改写。
this.$on('change', (...params) => {
this.$emit('xxx-change', this, ...params);
});
思路2:用nodejs遍历文件,读取文件源码匹配$emit,将$emit的事件记录下来,然后用思路1的方式批量插入代码。
问题:需要编辑nodejs脚本,另外组件如果不是单文件,有继承或mixins混合场景会比较麻烦。
修改原型链的方法,不过这样你父组件绑定的函数不也是需要一个个改吗?要统一参数,也应该加在原有参数后面怎么会插在前面