gpt4 book ai didi

javascript - 变量在 angular.forEach 中不可访问

转载 作者:行者123 更新时间:2023-12-03 00:05:28 24 4
gpt4 key购买 nike

我有一项服务

app.service('myService', function() {
this.list = [];
this.execute = function() {
//this.list is reachable here
angular.forEach(AnArrayHere, function(val, key) {
//this.list is not reachable here
});
}
}

即使在 Controller 中也可以访问

function Ctrl($scope, myService) {
$scope.list = myService.list;
}

有人可以解释一下为什么在 angular.foreach 中无法访问“this.list”以及如何访问“this.list”吗?

最佳答案

angular.forEach(参见 http://docs.angularjs.org/api/angular.forEach)函数中的最后一个参数是 this 的上下文。所以你会想要这样的东西:

app.service('myService', function() {

this.list = [];

this.execute = function() {

//this.list is reachable here

angular.forEach(AnArrayHere, function(val, key) {
//access this.list
}, this);

}
}

关于javascript - 变量在 angular.forEach 中不可访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15013016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com