vue基礎(chǔ) - 中心方式通訊

場(chǎng)景

多個(gè)并行組件通訊

原理

創(chuàng)建一個(gè) new vue({}) 的 bus 對(duì)象,然后并行組件都動(dòng)態(tài)注冊(cè)在這個(gè)對(duì)象上

代碼

<script src="https://cdn.jsdelivr.net/npm/vue"></script>

<div id="app">
  {{ message }}
  <first-banner></first-banner>
  <second-banner></second-banner>
</div>

<script lang="javascript">
  var Bus = new Vue({})

  var first = {
    template: `
      <div>
        <p @click="handleClick">firstInner組件</p>
      </div>
      `,
    name: 'first',
    methods: {
      handleClick () {
        Bus.$emit('fromFirstInner', '來自firstInner組件')
      }
    }
  }

  var second = {
    template: `
      <div>
          <p>secondInner組件: {{ message }}</p>
      </div>
      `,
    name: 'second',
    data() {
      return {
        message: ''
      }
    },
    created () {
      Bus.$on('fromFirstInner',(msg) => {
        this.message = msg
      })
    }
  }

  var app = new Vue({
    el: '#app',
    data: {
      message: 'center'
    },
    components: {
      "first-banner": first, 
      "second-banner": second
    }
  })
</script>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,954評(píng)論 25 709
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,199評(píng)論 4 61
  • 人,總是很難改正自己的缺點(diǎn),人,也總是很難發(fā)現(xiàn)自己的錯(cuò)誤,有時(shí),明知錯(cuò)了,卻欲罷不能,一錯(cuò)再錯(cuò),把握正確的方向,堅(jiān)...
    Lzr_2017閱讀 202評(píng)論 0 3
  • 矇瞳/文 小時(shí)候, 鄉(xiāng)愁是一枚小小的船票, 我在這頭, 母親在那頭。 長(zhǎng)大后, 鄉(xiāng)愁是一張窄窄的船票, 我在這頭,...
    這個(gè)周末閱讀 475評(píng)論 1 4
  • 謝謝闌珊!謝謝作者!謝謝上帝的安排讓我遇見如此美好的事情!日常我不太會(huì)用如此強(qiáng)烈的表達(dá)方式,但這里不得不用!因?yàn)橹?..
    耀冬閱讀 171評(píng)論 0 0

友情鏈接更多精彩內(nèi)容