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

Vue組件中的父子組件使用

 更新時(shí)間:2023年01月22日 09:57:55   作者:小貓虎兒~  
這篇文章主要介紹了Vue組件中的父子組件使用,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Vue組件中的父子組件

父組件向子組件傳值

  • 父組件通過屬性綁定(v-bind:)的形式, 把需要傳遞給子組件的數(shù)據(jù),以屬性綁定的形式,傳遞到子組件內(nèi)部,供子組件使用
  • 子組件需要在內(nèi)部定義 props 屬性。例如 props : [ ‘parentmsg’ ] 把父組件傳遞過來的 parentmsg 屬性,先在 props 數(shù)組中,定義一下,這樣,才能使用這個(gè)數(shù)據(jù)
  • 所有 props 中的數(shù)據(jù)都是通過父組件傳遞過來的

示例1: 

<div id="app" style="width: 800px;height: 100px;background: red;">
    <!-- 父組件,可以在引用子組件的時(shí)候, 通過屬性綁定(v-bind:)的形式,
    把需要傳遞給子組件的數(shù)據(jù),以屬性綁定的形式,傳遞到子組件內(nèi)部,供子組件使用-->
    <com1 v-bind:parentmsg="msg" style="width: 500px;height: 50px;background: green;"></com1>
</div>
<script>
    new Vue({
        el:'#app',
        data:{
        msg: '父組件中的數(shù)據(jù)'
    },
    components:{
        com1:{
            /*
                注意: 子組件中的 data 數(shù)據(jù),并不是通過 父組件傳遞過來的,
                而是子組件自身私有的,比如: 子組件通過 Ajax,請求回來的數(shù)據(jù),都可以
                放到 data 身上;
                data 上的數(shù)據(jù),都是可讀可寫的;
            */
            data(){
                return {
                title: '123',
                content: 'qqq'
            }
        },
            template: '<h1 @click="change">這是子組件:{{ parentmsg }}</h1>',
            /*
                注意: 組件中的 所有 props 中的數(shù)據(jù),都是通過 父組件傳遞給子組件的
                把父組件傳遞過來的 parentmsg 屬性,先在 props 數(shù)組中定義一下,這樣
                才能使用這個(gè)數(shù)據(jù)
            */
            props: ['parentmsg'],
            methods:{
                change: function(){
                    this.parentmsg = '被修改了'
                }
            }
        }
    }
});
</script>

示例2:

<div id="app">
    <input type="text" v-model="item">
    <div style="width: 200px;height: 150px;background: red;">
        <test :tt="item"></test>
    </div>
</div>
<template id="temp">
    <div>
        <p v-text="tt"></p>
    </div>
</template>
<script>
    Vue.component("test",{
        props:['tt'],
        template:'#temp'
    })
    new Vue({
        el:'#app',
        data:{
            item:'ABCD'
        }
    });
</script>

子組件向父組件傳值

子組件向父組件傳值是通過方法的方式

示例:

<div id="app" style="width: 500px;height: 300px;background: red;">
    <!-- 父組件向子組件傳遞方法使用的是事件綁定機(jī)制;v-on,當(dāng)我們自定義了 一個(gè)
    事件屬性之后那么,子組件就能夠,通過某些方式,來調(diào)用傳遞進(jìn)去的這個(gè)方法了 -->
    <com2 @func="show"></com2>
    <p>{{ datamsgFormSon }}</p>
</div>
<template id="tmpl">
    <div style="width: 300px;height: 200px;background: green;">
        <h1>這是子組件</h1>
        <input type="button" value="是子組件中的按鈕" @click="myclick">
    </div>
</template>
<script>
    // 定義了一個(gè)字面量類型的組件模板對象
    var com2 = {
        template: '#tmpl', // 通過指定了一個(gè) Id, 表示說,要去加載這個(gè)指定 Id 的template 元素中的內(nèi)容,當(dāng)作組件的 HTML 結(jié)構(gòu)
        data() {
            return {
                sonmsg: {
                    name: '大頭兒子',
                    age: 6
                }
            }
        },
        methods: {
            myclick() {
                // 當(dāng)點(diǎn)擊子組件的按鈕的時(shí)候,通過$emit 拿到父組件傳遞過來的 func 方法
                // emit 英文原意: 是觸發(fā),調(diào)用、發(fā)射的意思
                this.$emit('func', this.sonmsg)
            }
        }
    }
// 創(chuàng)建 Vue 實(shí)例,得到 ViewModel
    var vm = new Vue({
        el: '#app',
        data: {
            datamsgFormSon: null
        },
        methods: {
            show(data) {
                console.log('調(diào)用了父組件身上的 show 方法: --- ' + data)
                console.log(data.name);
                this.datamsgFormSon = data
            }
        },
        components: {
            com2
            //com2: com2
         }
    });
</script>

Vue父子組件的生命周期

父子組件的生命周期是一個(gè)嵌套的過程

渲染的過程

父beforeCreate->父created->父beforeMount->子beforeCreate->子created->子beforeMount->子mounted->父mounted

子組件更新過程

父beforeUpdate->子beforeUpdate->子updated->父updated

父組件更新過程

父beforeUpdate->父updated

銷毀過程

父beforeDestroy->子beforeDestroy->子destroyed->父destroyed

總結(jié)

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

相關(guān)文章

  • 詳解mpvue實(shí)現(xiàn)對蘋果X安全區(qū)域的適配

    詳解mpvue實(shí)現(xiàn)對蘋果X安全區(qū)域的適配

    這篇文章主要介紹了詳解mpvue實(shí)現(xiàn)對蘋果X安全區(qū)域的適配,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • vue 2.0 購物車小球拋物線的示例代碼

    vue 2.0 購物車小球拋物線的示例代碼

    本篇文章主要介紹了vue 2.0 購物車小球拋物線的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-02-02
  • 手寫實(shí)現(xiàn)vue2下拉菜單dropdown組件實(shí)例

    手寫實(shí)現(xiàn)vue2下拉菜單dropdown組件實(shí)例

    這篇文章主要為大家介紹了手寫vue2下拉菜單dropdown組件實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • vue cli使用絕對路徑引用圖片問題的解決

    vue cli使用絕對路徑引用圖片問題的解決

    這篇文章主要給大家介紹了關(guān)于vue cli使用絕對路徑引用圖片問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起看看吧。
    2017-12-12
  • Vue 3 中的 toRef 和 toRefs 函數(shù)案例講解

    Vue 3 中的 toRef 和 toRefs 函數(shù)案例講解

    這篇文章主要介紹了Vue 3 中的 toRef 和 toRefs 函數(shù),toRef 和 toRefs 函數(shù)是 Vue 3 中的兩個(gè)非常有用的函數(shù),它們可以幫助我們更好地管理組件中的響應(yīng)式數(shù)據(jù),并且可以提高組件的性能和用戶體驗(yàn),需要的朋友可以參考下
    2024-06-06
  • 一文總結(jié)Vue和React的異同

    一文總結(jié)Vue和React的異同

    這篇文章主要介紹了Vue和React的相同點(diǎn)不不同點(diǎn),文中對比介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-05-05
  • vue3的自定義指令directives實(shí)現(xiàn)

    vue3的自定義指令directives實(shí)現(xiàn)

    本文主要介紹了vue3的自定義指令directives實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • vue如何實(shí)現(xiàn)垂直居中

    vue如何實(shí)現(xiàn)垂直居中

    這篇文章主要介紹了vue如何實(shí)現(xiàn)垂直居中,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue?實(shí)現(xiàn)滑動(dòng)塊解鎖示例詳解

    vue?實(shí)現(xiàn)滑動(dòng)塊解鎖示例詳解

    這篇文章主要為大家介紹了vue?實(shí)現(xiàn)滑動(dòng)塊解鎖示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • Vue實(shí)現(xiàn)文字上下滾動(dòng)動(dòng)畫的示例代碼

    Vue實(shí)現(xiàn)文字上下滾動(dòng)動(dòng)畫的示例代碼

    這篇文章主要為大家詳細(xì)介紹了如何使用Vue實(shí)現(xiàn)超酷文字上下滾動(dòng)動(dòng)畫,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考下
    2024-03-03

最新評論

海口市| 泰兴市| 东乌珠穆沁旗| 东阳市| 明光市| 高邮市| 新河县| 开江县| 信阳市| 襄汾县| 龙里县| 沧州市| 东兰县| 海林市| 东莞市| 通河县| 华宁县| 台南县| 德兴市| 西峡县| 栾川县| 武定县| 和静县| 合作市| 德庆县| 莱州市| 太和县| 滨海县| 太白县| 泽库县| 梓潼县| 嘉兴市| 通化县| 合山市| 汉川市| 梅河口市| 铜鼓县| 呼图壁县| 荥阳市| 治多县| 壶关县|