最近写vue项目遇到个问题,需要强制页面内刷新某个组件,最后参考了
https://blog.csdn.net/weixin_33885253/article/details/88729501
原理:强制重新生成dom可以通过Vue中的key来实现。在Vue更新dom时,如果key值相同则会对原有组件进行复用,如果不同则会重新生成。
<template>
<button @click="refresh" />
<demo:key="id"></demo>
</template>
<script>
import demo from './demo'
export default {
data () {
return {
id: +new Date()
}
},
methods: {
refresh () {
this.id = +new Date()