1.用bus触发刷新事件
this.$bus.$emit('refresh', '')
2.在对应组件内接收刷新事件并重新获取数据,利用v-if刷新组件
mounted() {
this.$bus.$on('refresh', (e) => {
this.switchFlag = !this.switchFlag // 先让组件消失
this.change() // 重新获取数据
this.$nextTick(()=>{ // 获取数据后利用v-if重新渲染一遍
this.switchFlag = !this.switchFlag
})
})
},
<template>
<!-- 一级菜单 -->
<div v-if="switchFlag">
......
</div>
</template>