在JavaScript中就存在异步队列,所以可想而知,Vue中也会有异步更新
在下述代码中 log出来的内容可能和你预期的有所差距
数据在更新之后,DOM不会立马进行更新渲染
把多个数据更新的操作放在一个事件循环里面,在一个事件循环之后统一更新操作,进而提升页面渲染的效率
<body>
<div id="app">
<h1 ref="header">
{
{title}}
</h1>
</div>
</body>
<script src="../vue.js"></script>
<script>
var app = new Vue({
el: "#app",
data: {
title: "故乡的樱花开了"
},
mounted() {
this.title = "你确定不来看看?"
var header = this.$refs.header
console.log(1, this.title, header.innerText);
this.title = "你不回来看看?"
console.log(2, this.title, header.innerText);
},
})
</script