我需要删除事件监听器。我正在从事件监听器中执行的函数调用一些方法,所以我需要使用es6语法。我无法使用命名函数。我该如何删除事件监听器
methods :
initCanvas : function(x, y, width, height) {
//do something
},
some_method : function() {
let svgObjectEl = // some logic will give the object elemenet embedding the svg
svgObjectEl.addEventListener('load', () => {
//let x,y,width, height has some value
// some code here
this.initCanvas(x, y, width, height);
});
svgObjectEl.removeEventListener('load', ??);
}
答案 0 :(得分:1)
这样的事可能吗?
methods: {
initCanvas (x, y, width, height) {
//do something
},
some_method() {
svgObjectEl.options = { x: 12, y: 13, … }
svgObjectEl.addEventListener('load', this.listener)
},
listener(evt) {
// some code here
this.initCanvas(evt.target.options)
svgObjectEl.removeEventListener('load', this.listener)
}
}