Vuejs不更新我的界面,有人知道为什么吗



我有一个带有vuejs的应用程序。我有一个对象每10秒从API更新一次,当它更新时,它还必须更改Html(接口(。

虽然我可以在控制台中看到对象在变化,但我在更新界面时遇到了一些困难,因此我知道它在变化。

这是我的一段代码:

watch: {
myObj() {
for (let [key, tuner] of Object.entries(myObj)) {
---- some code ----
}
}
},
},
created() {
setInterval(this.callMyApi(), 10000);
},

我每10秒调用一次API,然后我使用WATCH属性来检查myObj何时更改,并对其进行一些逻辑处理。有人能帮我吗?

有两个组件对于确保监视对象(尤其是具有嵌套属性的对象(正常工作非常重要。

首先,您必须A(通过声明myObj: {}将属性实例化为对象,或者B(使用Vue.set(this, 'myObj', yourCustomObject)来确保它是被动的。

其次,如果对象包含嵌套的对象/数组,则必须使用deep: true

watch: {
myObj: {
deep: true, // this is the important part
handler() {
// your code
}
}
}

最新更新