vue 数据不能及时更新的

双向绑定后的数据没有刷新到view上

let tempArr = [];
        tempArr.push({id: 1, name: 'apple'});
        tempArr.push({id: 1, name: 'banana'});
        tempArr.push({id: 1, name: 'orange'});
        this.arr = tempArr;
        setTimeout(() => {
          // this.arr[0].color = 'white';
          for (let fruit of tempArr) {
            fruit.color = 'white';
          }
          console.log("result:", this.arr)
        }, 3000);

view页面的结果html

输入图片说明

console结果app

输入图片说明

解决方案

let tempArr = [];
        tempArr.push({id: 1, name: 'apple'});
        tempArr.push({id: 1, name: 'banana'});
        tempArr.push({id: 1, name: 'orange'});
        // 在设置双向绑定以前,就已经有了color这个属性
        for (let fruit of tempArr) {
          fruit.color = 'aa';
        }
        this.arr = tempArr;
        console.log("result--start:", this.arr)
        setTimeout(() => {
          // this.arr[0].color = 'white';
          for (let fruit of this.arr) {
            fruit.color = 'white';
          }
          console.log("result:", this.arr)
        }, 3000);

结果网站

页面输出结果ui

输入图片说明

在双向绑定以前就已经有了color属性 输入图片说明this

console输出改变后的结果双向绑定

输入图片说明

参考过的网站地址:code

https://www.cnblogs.com/zhuzhenwei918/p/6893496.html
相关文章
相关标签/搜索