Vue中 子組件與父組件之間的傳值

一润绵、子組件向父組件傳值

  • 1版保、子向父傳值 需要用到自定義事件 $emit履植。

  • 2付燥、this.$emit('自定義的事件名')

  • 3、當(dāng)自定義事件觸發(fā)時啦膜,所綁定的函數(shù)晤斩,就能自動獲得這個事件在創(chuàng)建的時候 所寫的參數(shù)

  • 4捏雌、一般 子向父傳值番挺,自定義事件寫在 子組件里面


    image.png
  • 5唠帝、然后在 父組件中 子標(biāo)簽上 觸發(fā)這個自定義屬性

  • 6、當(dāng)觸發(fā)自定義事件(byval)時玄柏,就能獲取到自定義事件上所攜帶的數(shù)據(jù)(this.cdata)

  • 7襟衰、父組件中 子組件的標(biāo)簽上觸發(fā)事件,由于事件的觸發(fā) 必須綁定函數(shù)


    image.png
  • 8粪摘、所以在父組件中我們需要定義一個接收數(shù)據(jù)的函數(shù)瀑晒,這個函數(shù) 可以自動獲得 子組件中傳遞過來的參數(shù)(數(shù)據(jù))


    image.png

二阀湿、父組件向子組件傳值

  • 1、我們可以在子組件中的 props中定義變量

第一種寫法有數(shù)據(jù)類型瑰妄,type寫什么數(shù)據(jù)類型,就能傳遞什么數(shù)據(jù)類型
如果你定義的數(shù)據(jù)類型不匹配映砖,則會根據(jù)設(shè)置的數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)化


image.png

第二種寫法 不規(guī)定數(shù)據(jù)類型時间坐,按照下面的寫法


image.png
  • 2、然后在父組件內(nèi)使用 子組件props定義的變量傳值

image.png
  • 3邑退、子組件中可以直接將這個變量當(dāng)做數(shù)據(jù)來使用

三竹宋、最后子傳父、父傳子的效果圖

image.png

兩組件的代碼如下

子組件 Child.vue

<template>
    <div id="child">
        <h1>{{ msg }}</h1>
        <button @click="sendData">子向父傳值</button>


        <!-- 父組件中的數(shù)據(jù) -->
        <h2>{{ abc }}</h2>
        <h3>{{ aaa }}</h3>
    </div>
</template>

<script>
export default {
    name: 'Child',
    data() {
        return {
            msg: '這是子組件',
            cdata : '這是子組件中的數(shù)據(jù)',
        }
    },
    props : {

        abc : {

            // 定義父組件傳遞過來的數(shù)據(jù)類型
            type : String,
            requored : true,

            // 如果你定義的數(shù)據(jù)類型不匹配地技,則會根據(jù)設(shè)置的數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)化
        }
    },

    // 不規(guī)定數(shù)據(jù)類型時蜈七,按照下面的寫法
    props: ["abc", 'aaa'],

    
    methods: {
        sendData() {
            console.log(this);
            // 子向父傳值 需要用到自定義事件 $emit
            // this.$emit('自定義的事件名')

            // 當(dāng)自定義事件觸發(fā)時,所綁定的函數(shù)莫矗,就能自動獲得這個事件在創(chuàng)建的時候 所寫的參數(shù)

            this.$emit('byval',this.cdata);

        }
    }
}
</script>

<style lang="less" scoped>
#child {
    padding: 10px;
    border: 3px solid #007aff;
    width: 90%;
    height: 400px;
    margin: auto;
}
</style>>

</style>

父組件 Father.vue

<template>
    <div id="father">
        <h1>{{ msg }}</h1>
        <!-- 子組件中的數(shù)據(jù) -->
        <h2>{{ data1 }}</h2>

        <!-- 子組件 -->
        <Child :abc="fdata" :aaa="aaa"    @byval="getdata" />
    </div>
</template>

<script>
// 引入子組件
import Child from '@/components/Child.vue';
export default {
    name: 'Father',
    data() {
        return {
            msg: '這是父組件',
            fdata: '這是父組件里面的數(shù)據(jù)1',
            aaa: '這是父組件里面的數(shù)據(jù)2',
            data1: '',
        }
    },
    components: {
        Child,
    },
    methods: {
        // 定義一個獲取子組件傳值的方法
        getdata(datas) {
            // datas 就是子向父傳過來的數(shù)據(jù)
            // 由于函數(shù)內(nèi)的參數(shù) 不能直接用于渲染
            // 所以我們需要在父組件的data中 定義一個變量
            // 來接收一下 子組件傳遞過來的參數(shù)
            this.data1 = datas;
        }
    }
}
</script>

<style lang="less" scoped>
</style>>
</style>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末飒硅,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子作谚,更是在濱河造成了極大的恐慌三娩,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件妹懒,死亡現(xiàn)場離奇詭異雀监,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)眨唬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進(jìn)店門会前,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人匾竿,你說我怎么就攤上這事瓦宜。” “怎么了搂橙?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵歉提,是天一觀的道長。 經(jīng)常有香客問我区转,道長苔巨,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任废离,我火速辦了婚禮侄泽,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蜻韭。我一直安慰自己悼尾,他們只是感情好柿扣,可當(dāng)我...
    茶點故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著闺魏,像睡著了一般未状。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上析桥,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天司草,我揣著相機(jī)與錄音,去河邊找鬼泡仗。 笑死埋虹,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的娩怎。 我是一名探鬼主播搔课,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼截亦!你這毒婦竟也來了爬泥?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤魁巩,失蹤者是張志新(化名)和其女友劉穎急灭,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體谷遂,經(jīng)...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡葬馋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了肾扰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片畴嘶。...
    茶點故事閱讀 40,852評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖集晚,靈堂內(nèi)的尸體忽然破棺而出窗悯,到底是詐尸還是另有隱情,我是刑警寧澤偷拔,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布蒋院,位于F島的核電站,受9級特大地震影響莲绰,放射性物質(zhì)發(fā)生泄漏欺旧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一蛤签、第九天 我趴在偏房一處隱蔽的房頂上張望辞友。 院中可真熱鬧,春花似錦、人聲如沸称龙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鲫尊。三九已至痴柔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間疫向,已是汗流浹背竞帽。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留鸿捧,地道東北人。 一個月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓疙渣,卻偏偏與公主長得像匙奴,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子妄荔,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,851評論 2 361

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