Sta*_*and 4 javascript vue.js vuejs2
我的数据中包含以下变量:
data: function () {
return {
myVariable: false,
}
}
Run Code Online (Sandbox Code Playgroud)
如何从如下所示的循环函数访问此变量?
anArray.forEach(function(item) {
this.myVariable = true;
// do something
});
Run Code Online (Sandbox Code Playgroud)
我得到'this'是未定义的,因为它在当前循环函数中查找,而不是在vuejs对象中查找。
Mat*_*ora 17
使用Arrow函数,这样您就不会在forEach循环中创建新范围并保留this对Vue组件的引用。
anArray.forEach((item) => {
this.myVariable = true;
// do something
});
Run Code Online (Sandbox Code Playgroud)
您可以绑定this到函数的范围:
anArray.forEach(function(item) {
this.myVariable = true;
// do something
}.bind(this));
Run Code Online (Sandbox Code Playgroud)
另一个是使用箭头符号(我不是 100% 确定):
anArray.forEach((item) => {
this.myVariable = true;
// do something
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5474 次 |
| 最近记录: |