遇到问题
当监听事件在弹窗里时,会出现第一个弹窗监听正常,第二个弹窗监听不到
原因
computed:相当于method一样,可以当做方法执行,返回function内return的值赋值在DOM上。但是多个{{}}(模板语法)使用了computed,computed内的function也只执行一次。仅当function内涉及到Vue实例绑定的data的值的改变,function才会从新执行,并修改DOM上的内容。
erd.listenTo(document.getElementById('box'), this.$debounce((element) => {
this.computedWidth()
}))
解决方案
使用ref作为监听对象
erd.listenTo(this.$refs.box, this.$debounce((element) => {
this.computedWidth()
}))