【发布时间】:2018-08-14 14:27:44
【问题描述】:
我在更改组件文件中的数据参数时遇到问题:
this.commandList.ListesCommandesATransmettre.forEach(data => {
this.catalogs.forEach(catalog => {
if (catalog.Libelle === data.Catalogue) {
if (catalog.selected === false) {
console.log(data.isSelected)
data.isSelected = false;
console.log(data.isSelected)
console.log(data);
}
}
})
});
此代码显示:
是的
假的
但是console.log(data)中isSelected的值还是true。那么,为什么结果是false?
【问题讨论】:
-
您能否提供变量 this.commandList 和 this.catalogs 的示例?请
-
我认为这是因为您有 2 个 foreach 循环。所以控制台正在显示它拥有的最新的
data。尝试做console.log(JSON.stringify(data));。或者在你的循环之外做一个console.log(this.commandList); -
rhavelka : 我在 console.log(JSON.stringify(data)) 内有 isSelected = false;
-
我在 Stackblitz 上复制了类似的东西,它可以工作 angular-yfgsay.stackblitz.io
标签: arrays angular typescript parameters boolean