亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue中$bus的用法及$on、$off的使用說明

 更新時間:2022年05月30日 09:09:01   作者:AALP  
這篇文章主要介紹了Vue中$bus的用法及$on、$off的使用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

$bus的用法及$on、$off的使用

Vue中 $bus一般與 $on、 $off連用,一般用在任意組件間的通訊,所以今天就一起說,這里給大家舉一個案例

首先在main.js中配置全局總線 

//引入Vue
import Vue from 'vue'
//引入App
import App from './App.vue'
//關(guān)閉Vue的生產(chǎn)提示
Vue.config.productionTip = false
//創(chuàng)建vm
new Vue({
?? ?el:'#app',
?? ?render: h => h(App),
?? ?beforeCreate(){ ? ? ? ? ? ? ? ? //在初始化階段前
?? ??? ?Vue.prototype.$bus = this ? //配置全局總線,bus有總線的意思
?? ?}
})

在Student組件中提供數(shù)據(jù)給另一個組件(School組件)

<template>
?? ?<div class="student">
?? ??? ?<h2>學生姓名:{{name}}</h2>
?? ??? ?<h2>學生性別:{{sex}}</h2>
?? ??? ?<button @click="sendStudentName">把學生名給School組件</button>
?? ?</div>
</template>
<script>
?? ?export default {
?? ??? ?name:'Student',
?? ??? ?data() {
?? ??? ??? ?return {
?? ??? ??? ??? ?name:'張三',
?? ??? ??? ??? ?sex:'男',
?? ??? ??? ?}
?? ??? ?},
?? ??? ?methods: {
?? ??? ??? ?sendStudentName(){ ? ? ? ?//提供發(fā)送數(shù)據(jù)
?? ??? ??? ??? ?this.$bus.$emit('hello',this.name)
?? ??? ??? ?}
?? ??? ?},
?? ?}
</script>

在School組件中使用事件總線,接收數(shù)據(jù)。School組件想接收數(shù)據(jù),則在School組件中給 $bus綁定事件,事件的回調(diào)則留在School組件自身。

<template>
?? ?<div class="school">
?? ??? ?<h2>學校名稱:{{name}}</h2>
?? ??? ?<h2>學校地址:{{address}}</h2>
?? ?</div>
</template>
<script>
?? ?export default {
?? ??? ?name:'School',
?? ??? ?data() {
?? ??? ??? ?return {
?? ??? ??? ??? ?name:'工程學院',
?? ??? ??? ??? ?address:'重慶巴南',
?? ??? ??? ?}
?? ??? ?},
?? ??? ?mounted() {
?? ??? ??? ?this.$bus.$on('hello',(data)=>{ ? ? ?//綁定當前事件(這里以hello為例)
?? ??? ??? ??? ?console.log('我是School組件,收到了數(shù)據(jù)',data)
?? ??? ??? ?})
?? ??? ?},
?? ??? ?beforeDestroy(){ ? ? ? ?//收尾操作,銷毀
?? ??? ??? ?this.$bus.$off('hello') ?//$off解綁當前組件所用到的事件
?? ??? ?}
?? ?}
</script>

到這里已經(jīng)結(jié)束了,再給一個App組件,大家可以試一試這個案例

<template>
?? ?<div class="app">
?? ??? ?<School/>
?? ??? ?<Student/>
?? ?</div>
</template>
<script>
?? ?import Student from './components/Student'
?? ?import School from './components/School'
?? ?export default {
?? ??? ?name:'App',
?? ??? ?components:{School,Student},
?? ?}
</script>

vue實例事件總結(jié)($on,$once,$off,$emit)

1.什么是實例事件?

實例事件就是在構(gòu)造器外部調(diào)用構(gòu)造器內(nèi)部的數(shù)據(jù)。

2.使用場景

比如構(gòu)造器已經(jīng)有一個加的方法,現(xiàn)在領(lǐng)導(dǎo)說還要做一個減的方法,而我又不想動構(gòu)造器里面的信息,那就可以使用實例事件了.操作如下:

在這里插入圖片描述

3.與$on對應(yīng)的還有一個$once 

 

上述代碼只改一個單詞$once

 app.$once('reduce',function(){
          console.log("減的方法觸發(fā)了");
          this.num--
      })

結(jié)果:減的方法只執(zhí)行一次.

4.$off關(guān)閉實例事件

關(guān)閉reduce后,減就失效了.

在這里插入圖片描述

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解vue的Des加密解密

    詳解vue的Des加密解密

    這篇文章主要為大家介紹了vue的Des加密解密使用實例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • Vue實現(xiàn)簡易跑馬燈效果

    Vue實現(xiàn)簡易跑馬燈效果

    這篇文章主要為大家詳細介紹了Vue實現(xiàn)簡易跑馬燈效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Vue body樣式修改方式

    Vue body樣式修改方式

    這篇文章主要介紹了Vue body樣式修改方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue項目多環(huán)境配置(.env)的實現(xiàn)

    vue項目多環(huán)境配置(.env)的實現(xiàn)

    最常見的多環(huán)境配置,就是開發(fā)環(huán)境配置,和生產(chǎn)環(huán)境配置,本文主要介紹了vue項目多環(huán)境配置的實現(xiàn),感興趣的可以了解一下
    2021-07-07
  • Vue語法和標簽的入門使用教程

    Vue語法和標簽的入門使用教程

    Vue是一套用于構(gòu)建用戶界面的漸進式框架,下面這篇文章主要給大家介紹了關(guān)于Vue語法和標簽使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-08-08
  • vue父組件傳值子組件報錯Avoid?mutating?a?prop?directly解決

    vue父組件傳值子組件報錯Avoid?mutating?a?prop?directly解決

    這篇文章主要為大家介紹了vue父組件傳值子組件報錯Avoid?mutating?a?prop?directly解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • 淺析vue偵測數(shù)據(jù)的變化之基本實現(xiàn)

    淺析vue偵測數(shù)據(jù)的變化之基本實現(xiàn)

    這里涉及到Vue一個重要特性:響應(yīng)式系統(tǒng)。數(shù)據(jù)模型只是普通的 JavaScript對象,當我們修改時,視圖會被更新,而變化偵測是響應(yīng)式系統(tǒng)的核心
    2021-06-06
  • vue實現(xiàn)監(jiān)控視頻直播的示例代碼

    vue實現(xiàn)監(jiān)控視頻直播的示例代碼

    本文主要介紹了vue實現(xiàn)監(jiān)控視頻直播的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-05-05
  • Vue如何實現(xiàn)iframe的上一步、下一步操作

    Vue如何實現(xiàn)iframe的上一步、下一步操作

    這篇文章主要介紹了Vue如何實現(xiàn)iframe的上一步、下一步操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Vue中addEventListener()?監(jiān)聽事件案例講解

    Vue中addEventListener()?監(jiān)聽事件案例講解

    這篇文章主要介紹了Vue中addEventListener()?監(jiān)聽事件案例講解,包括語法講解和事件冒泡或事件捕獲的相關(guān)知識,本文結(jié)合示例代碼給大家講解的非常詳細,需要的朋友可以參考下
    2022-12-12

最新評論