vue組件間傳值

一. 子組件向父組件傳值 - $emit 發(fā)射事件
父子組件傳值.png
1. 子組件$emit發(fā)射事件A
   this.$emit(event,...argument);
   /*
   * event: 要觸發(fā)的事件
   * argument: 傳給父組件的參數(shù)
   */ 
   例子:this.$emit('emitEvent',data,'lalala');
2. 父組件通過(guò)事件名A接收
<part-template @emitEvent = "ievent"></i-template>
methods:{
    ievent(...data){
        console.log('allData:',data);    // data為包含傳過(guò)來(lái)所有數(shù)據(jù)的數(shù)組辜王,第一個(gè)元素是對(duì)象勺鸦,第二個(gè)元素是字符串
    }
}
二. 父組件向子組件傳值 - props傳值
1. 在父組件import引入封裝出去的子組件
import dialogAttendee from "../../activity/component/dialogAttendee";
2. 在父組件視圖模板中到涂,通過(guò) : 變量 占位傳值
<dialogAttendee :dialogcascaderVisible="dialogcascaderVisible" @dialogClose="dialogClose"></dialogAttendee>
3. 在子組件通過(guò)props接收值树肃,像本組件的data中定義的變量一樣使用(this獲取)
props:{  
    dialogcascaderVisible: {
        type: Boolean,
        default: false
    },
    reservation:Array,
}
三. watch監(jiān)聽(tīng)值變化
  1. watch是一個(gè)對(duì)象泽腮,有鍵(要監(jiān)聽(tīng)的對(duì)象)拼苍,值(對(duì)象發(fā)生變化玖姑,執(zhí)行的函數(shù)端朵。
  2. 值可以是函數(shù)社付,也可以是函數(shù)名承疲。
data: {  
    c: {  
        name: '小強(qiáng)',  
        age: 20,  
        sex: '男'  
    },  
    tdArray:["1","2"],  
},  
watch: {
    a: function (val, oldVal) { //新值,舊值
      console.log('new: %s, old: %s', val, oldVal)
    },
    
    b: 'someMethod', // 函數(shù)名
   
    c: { // 包括選項(xiàng)的對(duì)象
      handler: function (val, oldVal) { /* ... */ }, //監(jiān)聽(tīng)變化時(shí)執(zhí)行回調(diào)函數(shù)
      deep: true鸥咖,//監(jiān)聽(tīng)對(duì)象的屬性燕鸽,需要深度監(jiān)聽(tīng);數(shù)組不需要啼辣。
      immediate: true
    }
    
    'c.name':function(val,oldval){ //鍵路徑必須加引號(hào)
         console.log(val+"aaa")  
    }   
  }
四. 注意事項(xiàng)
  1. 在Vue2中組件的props的數(shù)據(jù)流動(dòng)只能單向流動(dòng)啊研。即只能由組件外(調(diào)用組件方)通過(guò)組件的DOM屬性attribute傳遞props給組件內(nèi),組件內(nèi)只能被動(dòng)接收組件外傳遞過(guò)來(lái)的數(shù)據(jù)鸥拧,并且在組件內(nèi)党远,不能修改由外層傳來(lái)的props數(shù)據(jù)。
  2. 父組件可以通過(guò)自定義屬性向子組件傳值富弦;子組件通過(guò)props來(lái)接收沟娱;子組件不能直接修改父組件傳遞過(guò)來(lái)的數(shù)據(jù);子組件可以通過(guò)$emit()方法去間接調(diào)用父組件中的方法去更改父組件中的數(shù)據(jù)腕柜。
五. 父組件引用封裝出去的子組件
<template>  
    <div>  
        <testComponent></testComponent> <!-- 3.通過(guò)定義的子組件名以標(biāo)簽形式直接使用 -->  
    </div>  
</template>  
  
<script>  
    import testComponent from './testComponent.vue' //1.先使用import導(dǎo)入你要在該組件中使用的子組件  
    export default {  
        components: {testComponent}, //2.然后在components屬性中寫(xiě)入子組件  
        methods: {},   
    }  
</script>  
六. 動(dòng)態(tài)組件

1.通過(guò)使用預(yù)定義的標(biāo)簽< compnent >可以動(dòng)態(tài)的綁定其is特性济似,使得多個(gè)組件有一個(gè)共同的掛載點(diǎn)矫废,實(shí)現(xiàn)動(dòng)態(tài)切換。

  1. < keep-alive >標(biāo)簽會(huì)把切換出去的組件保留在內(nèi)存中砰蠢,可以保留它的狀態(tài)或避免重新渲染蓖扑。
<button @click="toggle('home')">顯示主頁(yè)</button>
<button @click="toggle('list')">顯示列表頁(yè)</button>
<keep-alive>
    <component :is="currentView"></component>
</keep-alive>

//修改currentView變量,切換組件名
 methods: {
     toggle(com) {   this.currentView = home;  }
 }
七. 兄弟組件傳值:bus總線傳值
  • 非父子組件之間不能直接通訊台舱,必須使用“代理人”赵誓,即中央數(shù)據(jù)總線過(guò)渡。
var bus = new Vue();
  • A組件向B組件傳值柿赊,A組件中要通過(guò)bus總線觸發(fā)相應(yīng)的事件俩功;
bus.$emit('sendtoTwo', this.one)
  • B組件要在鉤子函數(shù)中監(jiān)聽(tīng)相應(yīng)的事件。
mounted() {        // 監(jiān)聽(tīng)sendtoTwo, 事件監(jiān)聽(tīng)也可以寫(xiě)到created鉤子函數(shù)
   bus.$on('sendtoTwo', (data) => {
       this.two = data;
   })
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末碰声,一起剝皮案震驚了整個(gè)濱河市诡蜓,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌胰挑,老刑警劉巖蔓罚,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異瞻颂,居然都是意外死亡豺谈,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門(mén)贡这,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)茬末,“玉大人,你說(shuō)我怎么就攤上這事盖矫±霾眩” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵辈双,是天一觀的道長(zhǎng)责掏。 經(jīng)常有香客問(wèn)我,道長(zhǎng)湃望,這世上最難降的妖魔是什么换衬? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮证芭,結(jié)果婚禮上瞳浦,老公的妹妹穿的比我還像新娘。我一直安慰自己檩帐,他們只是感情好术幔,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布另萤。 她就那樣靜靜地躺著湃密,像睡著了一般诅挑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上泛源,一...
    開(kāi)封第一講書(shū)人閱讀 49,784評(píng)論 1 290
  • 那天拔妥,我揣著相機(jī)與錄音,去河邊找鬼达箍。 笑死没龙,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的缎玫。 我是一名探鬼主播硬纤,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼赃磨!你這毒婦竟也來(lái)了筝家?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤邻辉,失蹤者是張志新(化名)和其女友劉穎溪王,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體值骇,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡莹菱,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了吱瘩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片道伟。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖使碾,靈堂內(nèi)的尸體忽然破棺而出皱卓,到底是詐尸還是另有隱情,我是刑警寧澤部逮,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布娜汁,位于F島的核電站,受9級(jí)特大地震影響兄朋,放射性物質(zhì)發(fā)生泄漏掐禁。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一颅和、第九天 我趴在偏房一處隱蔽的房頂上張望傅事。 院中可真熱鬧,春花似錦峡扩、人聲如沸蹭越。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)响鹃。三九已至驾霜,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間买置,已是汗流浹背粪糙。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留忿项,地道東北人蓉冈。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像轩触,于是被迫代替她去往敵國(guó)和親寞酿。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

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

  • 前言 您將在本文當(dāng)中了解到,往網(wǎng)頁(yè)中添加數(shù)據(jù),從傳統(tǒng)的dom操作過(guò)渡到數(shù)據(jù)層操作,實(shí)現(xiàn)同一個(gè)目標(biāo),兩種不同的方式....
    itclanCoder閱讀 25,761評(píng)論 1 12
  • 父子組件間傳值 父組件—>子組件:1.父組件使用 v-bind 綁定變量并賦值給變量脱柱。2.在子組件里使用 prop...
    廢柴阿W閱讀 176評(píng)論 0 0
  • 組件(Component)是Vue.js最核心的功能熟嫩,也是整個(gè)架構(gòu)設(shè)計(jì)最精彩的地方,當(dāng)然也是最難掌握的褐捻。...
    六個(gè)周閱讀 5,584評(píng)論 0 32
  • 1掸茅、父組件傳值給子組件2、子組件傳值給父組件 1柠逞、父組件傳值給子組件 2昧狮、子組件傳值給父組件
    Locdee_落地閱讀 384評(píng)論 0 0
  • 回來(lái)后某一天在INS上DANNY發(fā)了這張照片給我 連我自己都忘記了有這張照片的存在 這是我們當(dāng)時(shí)唱完K出來(lái),Dan...
    秀秀大人是也閱讀 169評(píng)論 0 0