给要重新渲染的组件提供一个key属性,以便 Vue 知道特定的组件与特定的数据片段相关联。如果key保持不变,则不会更改组件,但是如果key发生更改,Vue 就会删除旧组件并创建新组件。
<v-card :key="reload">
{{this.message}}
<v-btn @click='Rerender'>change</v-btn>
</v-card>
export default {
data() {
return {
reload: 0,
message: '旧消息'
};
},
methods: {
Rerender() {
this.message = '新消息'
this.reload += 1;
}
}
}
Rerender()被调用时,reload改变。此时,Vue将销毁组件并创建一个新组件。我们得到的是一个子组件,它将重新初始化自身并“重置”其状态。
版权声明:本文为sdu_DYL原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。