vuejs nextick 不更新
vuejs nextick don't update
我尝试将我的前端连接到我的后端,
请求已正确完成,我收到了正确的数据,但 DOM 没有更新。我用的是this.$nextTick 但不影响更新
在模板中我使用{{ system.CPU.avgload }}
就像我说的那样,提取正确完成,它传递到 nexttick,但没有任何变化
在主视图中我有这个
import System from '../utils/system'
import Auth from '../utils/auth'
export default {
created: function () {
this.system = {
CPU: {
avgload: 0
}
}
},
mounted: function () {
this.fetchData()
setInterval(function () {
this.fetchData()
}.bind(this), 10000)
},
methods: {
fetchData () {
if (!Auth.checkAuth) {
console.log('test')
this.error = true
} else {
var self = this
this.$nextTick(function () {
System.Get(function (response) {
self.system = response
})
})
}
}
}
}
模板是
<div class="text-xs-left" id="example-caption-1">CPU : {{ system.CPU.avgload }} %</div>
您必须在 vue 实例的 data 部分添加变量 system
。只有这个变量会在 HTML.
中变为反应式并可用
export default {
data: function () {
return { system: {
CPU: {
avgload : ""
}
}
}
}
...
...
我尝试将我的前端连接到我的后端, 请求已正确完成,我收到了正确的数据,但 DOM 没有更新。我用的是this.$nextTick 但不影响更新
在模板中我使用{{ system.CPU.avgload }} 就像我说的那样,提取正确完成,它传递到 nexttick,但没有任何变化
在主视图中我有这个
import System from '../utils/system'
import Auth from '../utils/auth'
export default {
created: function () {
this.system = {
CPU: {
avgload: 0
}
}
},
mounted: function () {
this.fetchData()
setInterval(function () {
this.fetchData()
}.bind(this), 10000)
},
methods: {
fetchData () {
if (!Auth.checkAuth) {
console.log('test')
this.error = true
} else {
var self = this
this.$nextTick(function () {
System.Get(function (response) {
self.system = response
})
})
}
}
}
}
模板是
<div class="text-xs-left" id="example-caption-1">CPU : {{ system.CPU.avgload }} %</div>
您必须在 vue 实例的 data 部分添加变量 system
。只有这个变量会在 HTML.
export default {
data: function () {
return { system: {
CPU: {
avgload : ""
}
}
}
}
...
...