vue 3.0 總線程bus引入(mitt)


vue 3.0 移除了 $on$off 和 $once 方法,$emit 仍然是現有 API 的一部分,因為它用於觸發由父組件以聲明方式附加的事件處理程序.

官方推薦使用第三方類庫。  mitt舉例:

1、執行   npm install --save mitt     加載依賴

2、創建bus.js 文件內容如下:(可與main.js同級)

import mitt from 'mitt'

const bus = {}

const emitter = mitt()

bus.$on = emitter.on
bus.$off = emitter.off
bus.$emit = emitter.emit

export default bus

3、main.js 加入內容如下:

import Bus from './bus.js'/// mitt 總線程引入
Vue.prototype.bus = Bus;

4、使用如下:

   兄組件:

methods: {
workOrdChange(val) {
let self = this;
self.bus.$emit('dr-workOrd-change', val)
}
}

弟組件:
created() {
let self = this;
self.bus.$on("dr-workOrd-change", (val) => {
let drO = val;
console.log("drO in" + drO);
});
},

完畢!

 

 



 

 
        

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM