数据丢失是框架的BUG,vue中的数据绑定是通过ES5中属性的特性实现的。所以没有设置特性的数据,就会丢失。以下mounted中的四种操作都会导致数据丢失。
<
template>
<
div>
<
div>{{ colors }}
div>
<
div>{{ obj }}
div>
<
div>{{ intro }}
div>
div>
template>
<
script>
export
default {
data() {
return {
colors: [
"red",
"green",
"blue"],
obj: {},
};
},
mounted() {
// 1 数组中的值类型修改
this.colors[1] = "pink";
// 2 数组中的新成员
this.colors[3] = "gold";
// 3 对象中的新属性
this.obj.size = 200;
// 4 未初始化的数据
this.intro = "111111";
},
};
script>