使用后端数据后,给每个item都加checked后,改变checked值,就无法导致视图层更新了

59 阅读1分钟
this.todayList.forEach((item) => {
  item.checked = false;
});

在这段代码中,你为 this.todayList 中的每个项都手动添加了 checked 属性并初始化为 false。然而,这种方式添加的属性并不是响应式的,因此当你改变 checked 属性的值时,不会自动触发视图的更新。

为了确保 checked 属性的变化能够触发视图的更新,你可以使用 Vue 提供的 this.$set 方法来添加 checked 属性。修改上述代码如下:

javascript

复制

this.todayList.forEach((item) => {
  this.$set(item, 'checked', false);
});

通过使用 this.$set 方法,你可以将 checked 属性添加为响应式属性,使得当你改变它的值时,能够触发视图的更新。