有一个组件,组件data中有一个数组:
data () {
return {
list: [] // 假设该数组的 dep.id = 53
}
}
vue中被监听的对象,在控制台中打印的时候,会有__ob__: Observer 其中有个dep.id
还不太了解这个dev.id的具体含义,猜测该id为对象唯一标识
然后,在methods中,为list赋值,大概操作就是 this.list = someData, 然后视图会自动更新,目前一切正常
问题是,当页面进行跳转,再回到该页时,会发现 list 的dep.id值更新了,且该值貌似都比较大,基本在1000+,先假设该值是1024
而且,在操作list时,即上面提到的操作 this.list = someData, 这里的list的 dep.id并不是1024,而是最初的值 53,这最终导致的结果就是视图无法更新(猜测这时视图引用的应该是1024的list)
目前已经通过在data()外定义list,使得重新加载组件时引用的都是同一个对象,但是这里面的歪歪还请大佬们指点一下
30秒到达战场
相关分类