Vue子元件接收父元件傳值方式

大雄45發表於2022-04-14
導讀 這篇文章主要給大家分享的是Vue子元件接收父元件傳值的3種方式,下文更多詳細的相關資料,需要而小夥伴可以參考一下
父元件程式碼↓
< template>
    < div>
        < div>父元件< /div>
        < Student :name="name" :age="age">< /Student>
    < /div>
< /template>
 
< script>
    // 引入元件
    import Student from './components/Student'
     
    export default {
        name: 'App',
        components: {Student,},
        data() {
            return {
                name: "張三",
                age: 18
            }
        }
         
    }
     
< /script>
1.簡單宣告接收
< template>
    < div>
        < div>子元件< /div>
        < h2>學生姓名:{{ name }}< /h2>
        < h2>年齡:{{ age }}< /h2>
    < /div>
< /template>
 
< script>
    export default {
        name: 'Student',
        data() {
            return {}
        },
         
        // 簡單宣告接收 ----------
        props: ['name', 'age']
        // ---------------------
         
    }
< /script>
2.接收資料的同時進行 型別限制
< template>
    < div>
        < div>子元件< /div>
        < h2>學生姓名:{{ name }}< /h2>
        < h2>年齡:{{ age }}< /h2>
    < /div>
< /template>
 
< script>
    export default {
        name: 'Student',
        data() {
            return {}
        },
         
        // 接收資料的同時進行型別限制 ---
        props: {
            name: String,
            age: Number
        }
        // --------------------------
         
    }
< /script>
3.接收資料的同時對 資料型別、必要性、預設值 進行限制
< template>
    < div>
        < div>子元件< /div>
        < h2>學生姓名:{{ name }}< /h2>
        < h2>年齡:{{ age }}< /h2>
    < /div>
< /template>
 
< script>
    export default {
        name: 'Student',
        data() {
            return {}
        },
        // 接收資料的同時對 資料型別、必要性、預設值 進行限制 -----
        props: {
            name: {
                type: String,      // name傳入型別必須為字串
                required: true    // name設為必傳欄位
            },
            age: {
                type: Number,
                default: 233      // 預設值
            }
        },
        // ------------------------------------------------
    }
< /script>

原文來自:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2887003/,如需轉載,請註明出處,否則將追究法律責任。

相關文章