最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue2.0父子組件及非父子組件之間的通信方法

 更新時間:2017年01月21日 09:49:51   作者:mr_fzz  
這篇文章給大家介紹了vue2.0父子組件及非父子組件之間的通信方法,非常不錯,具有參考借鑒價值,需要的朋友參考下吧

1.父組件傳遞數(shù)據(jù)給子組件

父組件數(shù)據(jù)如何傳遞給子組件呢?可以通過props屬性來實現(xiàn)

父組件:

<parent>
  <child :child-msg="msg"></child>//這里必須要用 - 代替駝峰
</parent>
data(){
  return {
    msg: [1,2,3]
  };
}

子組件通過props來接收數(shù)據(jù):

方式1:

props: ['childMsg']

方式2 :

props: {
  childMsg: Array //這樣可以指定傳入的類型,如果類型不對,會警告
}

方式3:

props: {
  childMsg: {
    type: Array,
    default: [0,0,0] //這樣可以指定默認的值
  }
}

這樣呢,就實現(xiàn)了父組件向子組件傳遞數(shù)據(jù).

2.子組件與父組件通信

那么,如果子組件想要改變數(shù)據(jù)呢?這在vue中是不允許的,因為vue只允許單向數(shù)據(jù)傳遞,這時候我們可以通過觸發(fā)事件來通知父組件改變數(shù)據(jù),從而達到改變子組件數(shù)據(jù)的目的.

子組件:

<template>
  <div @click="up"></div>
</template>
methods: {
  up() {
    this.$emit('upup','hehe'); //主動觸發(fā)upup方法,'hehe'為向父組件傳遞的數(shù)據(jù)
  }
}

父組件:

<div>
  <child @upup="change" :msg="msg"></child> //監(jiān)聽子組件觸發(fā)的upup事件,然后調(diào)用change方法
</div>
methods: {
  change(msg) {
    this.msg = msg;
  }
}

3.非父子組件通信

如果2個組件不是父子組件那么如何通信呢?這時可以通過eventHub來實現(xiàn)通信.
所謂eventHub就是創(chuàng)建一個事件中心,相當于中轉(zhuǎn)站,可以用它來傳遞事件和接收事件.

let Hub = new Vue(); //創(chuàng)建事件中心

組件1觸發(fā):

<div @click="eve"></div>
methods: {
  eve() {
    Hub.$emit('change','hehe'); //Hub觸發(fā)事件
  }
}

組件2接收:

<div></div>
created() {
  Hub.$on('change', () => { //Hub接收事件
    this.msg = 'hehe';
  });
}

這樣就實現(xiàn)了非父子組件之間的通信了.原理就是把Hub當作一個中轉(zhuǎn)站!

以上所述是小編給大家介紹的vue2.0父子組件及非父子組件之間的通信方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • vue2.0使用Sortable.js實現(xiàn)的拖拽功能示例

    vue2.0使用Sortable.js實現(xiàn)的拖拽功能示例

    本篇文章主要介紹了vue2.0使用Sortable.js實現(xiàn)的拖拽功能示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-02-02
  • vue3清空reactive的四種方式

    vue3清空reactive的四種方式

    本文主要介紹了vue3清空reactive的四種方式,包含使用?Object.assign,使用?Object.keys?和?for...in?循環(huán),使用?delete?操作符和重新賦值4種,感興趣的可以了解一下
    2024-03-03
  • 簡單理解Vue條件渲染

    簡單理解Vue條件渲染

    這篇文章主要幫助大家簡單理解Vue條件渲染,什么是Vue條件渲染,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • vue框架render方法如何替換template

    vue框架render方法如何替換template

    這篇文章主要介紹了vue框架render方法如何替換template,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue 踩不完的異步之坑及解決

    vue 踩不完的異步之坑及解決

    這篇文章主要介紹了vue 踩不完的異步之坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • vite搭建vue2項目的實戰(zhàn)過程

    vite搭建vue2項目的實戰(zhàn)過程

    自從體驗了一下vite之后,真的太快了,然而對vue3還不是很熟練,就想著在vue2的項目中使用以下vite,下面這篇文章主要給大家介紹了關(guān)于vite搭建vue2項目的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Vue中input被賦值后,無法再修改編輯的問題及解決

    Vue中input被賦值后,無法再修改編輯的問題及解決

    這篇文章主要介紹了Vue中input被賦值后,無法再修改編輯的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue實現(xiàn)移動端touch拖拽排序

    vue實現(xiàn)移動端touch拖拽排序

    這篇文章主要為大家詳細介紹了vue實現(xiàn)移動端touch拖拽排序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • Vue3.3?+?TS4構(gòu)建實現(xiàn)ElementPlus功能的組件庫示例

    Vue3.3?+?TS4構(gòu)建實現(xiàn)ElementPlus功能的組件庫示例

    Vue.js?是目前最盛行的前端框架之一,而?TypeScript?則是一種靜態(tài)類型言語,它能夠讓開發(fā)人員在編寫代碼時愈加平安和高效,本文將引見如何運用?Vue.js?3.3?和?TypeScript?4?構(gòu)建一個自主打造媲美?ElementPlus?的組件庫
    2023-10-10
  • ant?design?vue?pro?支持多頁簽模式問題

    ant?design?vue?pro?支持多頁簽模式問題

    這篇文章主要介紹了ant?design?vue?pro?支持多頁簽模式問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評論

麟游县| 轮台县| 盐源县| 蓬安县| 鹿邑县| 邵阳县| 太白县| 克东县| 治县。| 绥中县| 璧山县| 德令哈市| 林周县| 武川县| 鸡东县| 合山市| 西盟| 龙里县| 囊谦县| 棋牌| 崇州市| 昭平县| 吉木萨尔县| 沧州市| 锦州市| 张北县| 吴桥县| 昌黎县| 大冶市| 建湖县| 东宁县| 同心县| 博白县| 安顺市| 大余县| 黑山县| 永昌县| 桐乡市| 廊坊市| 平原县| 南陵县|