我的组件上有一个点击事件,它需要从组件本身访问私有(private)变量。然而,我似乎遇到了一个范围问题:关键字 this
不再指组件的范围,而是指事件的范围。帮助!
onclick(event){
for(var i = 0; i < this.arr.length; i++) { ... }
}
在上面的例子中,this.arr
是未定义的,因为它不属于事件作用域。
如何从这里访问组件范围?
最佳答案
添加 .bind(this)
来修复 this
element.addEventListener("click", this.onclick.bind(this), false);
关于javascript - Angular 2 : How do you access component variables within an event (scope issue),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39371840/