gpt4 book ai didi

javascript - 无法分配给 true 的只读属性 'x'

转载 作者:行者123 更新时间:2023-12-03 09:10:47 24 4
gpt4 key购买 nike

我的 Angular Controller 遇到了令人沮丧的问题。我正在尝试有条件地设置附加到范围的对象的某些字段的值。 if下面的 block 本身可以完美工作,但是一旦我添加 else block 我遇到以下错误:

TypeError: Cannot assign to read only property 'gameType' of true

var getGames = function() {
var defer = $q.defer();
playersService.getGames({
playerId: playerId
}).$promise.then(function(data) {
vm.games = data;

for (var x in vm.games) {
if (vm.games[x].activity_type === 'preseason') {
vm.games[x].gameType = 'preseason';
} else {
vm.games[x].gameType = vm.games[x].type;
}
}
defer.resolve(data);
});
return defer.promise;
};

console.log之后'ing vm.games[x] else内阻止我看到当我点击时发生错误:

Promise {$$state: Object}
true

...而所有其他行显示:

Resource {id: "...", ...}

最佳答案

不要在数组上使用 for in 循环,而是使用标准 for 循环。 for in 用于迭代对象的属性。这可能会在分配属性值时导致一些问题。

关于javascript - 无法分配给 true 的只读属性 'x',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32076245/

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