越寫悅快樂之Vue項目如何集成EventBus

Vue Bus - 圖片來自我的手機(jī)

今天的越寫悅快樂之系列文章為大家?guī)鞻ue項目如何集成EventBus肖爵。有過Vue開發(fā)經(jīng)驗的小伙們都知道,多個組件之間進(jìn)行數(shù)據(jù)的傳遞或者共享在Vue項目中很是常見惭缰,我們?nèi)绾卧诓灰?code>Vuex的情況下該如何共享數(shù)據(jù)呢减牺?今天的文章我為大家?guī)磉@篇文章,希望大家喜歡愈案。

Event是什么

  • Event是HTMLDOM對象中事件的狀態(tài),它可以觸發(fā)頁面元素的行為鹅搪,比如鼠標(biāo) / 鍵盤屬性站绪、事件句柄、以及多個瀏覽器支持的標(biāo)準(zhǔn)Event事件丽柿。
  • 在Vue中表示一個Vue實例的方法恢准,比如$on$off甫题、$emit

開發(fā)環(huán)境

  • Window 10.0.17763
  • Node 10.15.3
  • Yarn 1.16.0
  • Vue 2.6.10

接入步驟

添加依賴

  • CDN方式
<!-- development version -->
<script src="https://cdn.jsdelivr.net/npm/vue-bus/dist/vue-bus.js"></script>
<!-- production version -->
<script src="https://cdn.jsdelivr.net/npm/vue-bus/dist/vue-bus.min.js"></script>
  • NPM方式

npm install vue-bus --save

  • YARN方式

yarn add vue-bus -S

引入

我們在項目的入口文件src/main.js中使用Vue.use()來掛載到Vue對象上馁筐,可參考如下寫法:

import Vue from 'vue'
import VueBus from 'vue-bus'

Vue.use(VueBus)

使用

最后我們在組件文件Event.vue中提供的方法(組件生命周期)中聲明和監(jiān)聽Bus,下面給出一個完整的Vue組件的定義:

<template>
  <div>
    <van-nav-bar 
      :title="pageTitle" 
      fixed/>
  </div>
</template>

<script>
import { NavBar, Toast } from 'vant'
export default {
  name: 'Event',
  components: {
    [NavBar.name]: NavBar,
    [Toast.name]: Toast
  },
  data() {
    return {
      // 頁面標(biāo)題
      pageTitle: '我',
    }
  },
  created() {
    this.$bus.on('add-todo', this.addTodo);
  },
  beforeDestroy() {
    this.$bus.off('add-todo', this.addTodo);
  },
  methods: {
    addTodo() {
      this.$bus.emit('add-todo', { text: this.newTodoText });
      this.newTodoText = '';
    }
  }
}
</script>

<style lang="less" scoped>
.van-cell-group {
  margin-top: 48px;
}
</style>

那我們在組件創(chuàng)建和銷毀的過程中檢測addTodo方法的調(diào)用坠非,也就是精確控制頁面的行為敏沉。

參考

當(dāng)然我們也可以從Vue中創(chuàng)建一個Bus對象,然后綁定到一個Vue實例上,然后在組件中使用this.$bus.on方法來注冊事件盟迟。

個人收獲和感想

通過以上知識點的梳理秋泳,我們知道了父子組件之間如何進(jìn)行數(shù)據(jù)通信,以及不同組件之間如何共享數(shù)據(jù)攒菠,并通過合適的架構(gòu)設(shè)計來保證業(yè)務(wù)中數(shù)據(jù)的共享和流動轮锥,同時為后續(xù)的升級迭代提供可擴(kuò)展的支持和平滑升級,我相信除了這種方式外要尔,也會有其它數(shù)據(jù)通信的方式舍杜,在前端領(lǐng)域不斷更新變化的時代,我們只有深入底層理解原理赵辕,再加上一定經(jīng)驗的實踐會給我們業(yè)務(wù)的發(fā)展提供充分有力的保障既绩,更能打破信息壁壘,通過不同層次的學(xué)習(xí)方式來努力提升技術(shù)水平还惠,構(gòu)建更加穩(wěn)定安全的產(chǎn)品或者服務(wù)饲握,我相信產(chǎn)品的最大價值就是為用戶不斷創(chuàng)造價值,對此我深信不疑蚕键,更希望大家保持學(xué)習(xí)的熱情救欧,完善自己的知識技術(shù)體系,打造屬于我們自己的平臺或者產(chǎn)品锣光。若是我的文章對你有所啟發(fā)笆怠,那將是我莫大的榮幸。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末誊爹,一起剝皮案震驚了整個濱河市蹬刷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌频丘,老刑警劉巖办成,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異搂漠,居然都是意外死亡迂卢,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進(jìn)店門桐汤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來而克,“玉大人,你說我怎么就攤上這事惊科∨囊。” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵馆截,是天一觀的道長。 經(jīng)常有香客問我,道長蜡娶,這世上最難降的妖魔是什么混卵? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮窖张,結(jié)果婚禮上幕随,老公的妹妹穿的比我還像新娘。我一直安慰自己宿接,他們只是感情好赘淮,可當(dāng)我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著睦霎,像睡著了一般梢卸。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上副女,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天蛤高,我揣著相機(jī)與錄音,去河邊找鬼碑幅。 笑死戴陡,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的沟涨。 我是一名探鬼主播恤批,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼裹赴!你這毒婦竟也來了开皿?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤篮昧,失蹤者是張志新(化名)和其女友劉穎赋荆,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體懊昨,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡窄潭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了酵颁。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嫉你。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖躏惋,靈堂內(nèi)的尸體忽然破棺而出幽污,到底是詐尸還是另有隱情,我是刑警寧澤簿姨,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布距误,位于F島的核電站簸搞,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏准潭。R本人自食惡果不足惜趁俊,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望刑然。 院中可真熱鬧寺擂,春花似錦、人聲如沸泼掠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽择镇。三九已至挡逼,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間沐鼠,已是汗流浹背挚瘟。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留饲梭,地道東北人乘盖。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像憔涉,于是被迫代替她去往敵國和親订框。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容