IT科技

當前位置 /首頁/IT科技 > /列表

vue兄弟組件之間傳值

兄弟組件指的是在同一個根組件中的組件, 組件之間沒有使用關係。

vue兄弟組件之間傳值

兄弟組件之間的數據傳值有兩種方式:

第一種在組件結構相對簡單情況下,可以通過兄弟組件中的父組件, 子組件先把數據傳遞給父組件,父組件再傳遞給另外的子組件;

第二種是在兄弟組件中創建一個公共的vue實例來實現事件的發出和監聽。

以下是操作示範:

vue實例:

import Vue from 'vue'

export default new Vue()

接着在子組件中引入公共的vue實例, 通過vue實例來發出事件:

methods: {

    tellname () {

       // 發出事件,傳遞數據  givename自定義事件

   bus.$emit('givename', this.mybfname) 

}

然後將另外的子組件引入公共vue實例, 通過vue實例監聽事件並接收數據:

import bus from '@/utils/myvue.js'

// 組件一加載就進行兄弟組件所發出的事件的監聽

  mounted () {

    // $(dom).on('click',function(){})

    // bus.$on(兄弟組件中自定義的事件, 處理函數)

    // 處理函數有一個默認參數,就是其它組件所傳遞的數據

    bus.$on('givename', (data) => {

      console.log(data);

      this.mysbfname = data

    })

  }

vue兄弟組件之間傳值 第2張

關於兄弟組件之間的數據傳值方式,我們就分享到這啦!

TAG標籤:傳值 兄弟 vue 組件 #