1、父組件與子組件之間值傳遞步驟以下:vue
例如:我有一個父組件Myhome.vue 和一個子組件Header.vueapp
一、父組件調用子組件的時候,動態綁定屬性值this
<v-myheader :title="title"></v-myheader>
二、在子組件使用 props 來接受父組件傳過來數據(props:['title']),若是是多個就定義多個屬性就能夠spa
完整代碼以下:code
一、Myhome.vue(父組件)代碼以下:component
<template> <div id="homeapp"> <h1>這是一個home123</h1> <v-myheader :title="title"></v-myheader> </div> </template> <script> import MyHeader from './Header.vue'; export default { name:'myhome', data () { return { title:'父類數據' } } ,components :{ 'v-myheader':MyHeader } } </script>
二、Header.vue(子組件)代碼以下:對象
<template> <div id="headerapp"> <h3>這是頭部組件(子組件)</h3> <h2>父類數據--{{title}}</h2> </div> </template> <script> export default { data() { return { msg:'mgs' } },methods:{ } ,props:['title'] } </script>
二、除了傳遞屬性之外還能傳遞方法和父組件的對象,若是是傳遞父組件的對象,那麼在子組件裏就能經過父組件對象獲取屬性和方法、數據blog
代碼以下:ip
父類組件代碼以下:get
<template> <div id="homeapp"> <h1>這是一個home123</h1> <v-myheader :title="title" :show='show' :home="this"></v-myheader> </div> </template> <script> import MyHeader from './Header.vue'; export default { name:'myhome', data () { return { title:'父類數據' } } ,methods:{ show(a) { alert('我是父組件方法'+a); } } ,components :{ 'v-myheader':MyHeader } } </script>
其中:
:show='show'->表示傳遞方法
:home="this"->表示傳遞父類實例對象
子組件代碼以下:
<template> <div id="headerapp"> <h3>這是頭部組件(子組件)</h3> <h2>父類數據--{{title}}</h2> <button @click="show(123)">調用父類方法</button> <button @click="getparentdata()">獲取父組件數據和方法</button> </div> </template> <script> export default { data() { return { msg:'mgs' } },methods:{ getparentdata (){ alert(this.home.title); } } ,props:['title','show','home'] } </script>
3、父組件主動獲取子組件的方法和屬性
一、調用子組件的時候定義一個ref