步骤:
- 安装
mitt
:npm install --save mitt
- 新建项目文件:
src/utils/bus.ts
,导出mitt
import mitt from "mitt";
const busEmitter = mitt()
export default busEmitter
3.page1.vue
页面,使用 emit
发送消息
import busEmitter from '@/utils/bus'
const addNodeFields = (type: string) => {
busEmitter.emit('addNodeFields', type)
}
4.page2.vue
页面,使用 on
接收消息,在页面销毁前订阅
import {onBeforeUnmount} from 'vue'
import busEmitter from '@/utils/bus'
busEmitter.on('addNodeFields', (type:string) => {
//具体执行逻辑......
editDialogVisible.value = true
})
//取消订阅
onBeforeUnmount(() => {
busEmitter.off('addNodeFields')
})