Vue中的bus指的是消息總線(message bus),它是Vue提供的一種跨組件通信的機制。在Vue中,每個Vue實例都可以作為一個事件總線或者說消息中心,通過bus來傳遞事件和數據,使組件之間能夠相互通信。
Vue提供了全局的`Vue.prototype.$bus`,也可以使用自定義的bus實例。bus實例可以通過Vue.extend({})的方式來創建。下面是自定義bus實例的代碼:
//定義bus實例 const bus = new Vue() //組件A中監聽事件并接收數據 bus.$on('event', (data) =>{ console.log('data from B:', data) }) //組件B中觸發事件并傳遞數據 bus.$emit('event', 'Hello from B!')
以上代碼中,組件A中使用`$on`方法監聽bus實例上的`'event'`事件,并接收來自組件B中的數據;組件B中使用`$emit`方法觸發bus實例上的`'event'`事件,并向組件A傳遞數據。
需要注意的是,bus實例的作用域是全局的,所有組件都可以訪問它。因此,在實際使用中,應該避免事件名稱的沖突,以免造成混淆和干擾。
上一篇python 身份證分類
下一篇python 身份證圖片