父傳子:
子組件使用props接收父組件的值
父組件(test.vue):

1 <template> 2 <!-- 父傳子 --> 3 <div class="container"> 4 父組件:<input type="text" v-model="value"> 5 <!-- 引入子組件 --> 6 <com-b :zhangsan="value"></com-b> 7 </div> 8 </template> 9 10 <script> 11 import comB from '@/components/com-b' 12 export default { 13 data() { 14 return { 15 value:'' 16 } 17 }, 18 methods:{ 19 20 }, 21 components: { 22 comB 23 } 24 } 25 </script>
子組件(com-b.vue)在component文件夾中創建:

1 <template> 2 <div class="container"> 3 <!-- 這是子組件 --> 4 <div>{{zhangsan}}</div> 5 </div> 6 </template> 7 8 <script> 9 export default { 10 data() { 11 return { 12 } 13 }, 14 props:['zhangsan'], 15 methods:{ 16 17 }, 18 } 19 </script>
子傳父:
子傳父需要事件觸發
子組件(com-b.vue)在component文件夾中創建:

1 <template> 2 <div class="container"> 3 <!-- 這是子組件 --> 4 <!-- 點擊按鈕后將自組件的數據傳給父組件 --> 5 {{msg}} 6 <button @click="ClickEvent()">點擊自組件發送數據給父組件</button> 7 </div> 8 </template> 9 10 <script> 11 export default { 12 data() { 13 return { 14 msg:'我是自組件數據' 15 } 16 }, 17 methods:{ 18 //點擊事件 19 ClickEvent(){ 20 //this.$emit('監聽事件','要傳遞的值') 21 this.$emit('listenEvent',this.msg) 22 } 23 }, 24 } 25 </script>
父組件(test.vue):

1 <!-- 子傳父 --> 2 <template> 3 <div class="container"> 4 <!-- 引入自組件--> 5 <!-- 在父組件中使用傳遞的事件進行監聽,回調函數fn --> 6 <!-- 事件可以自定義,回調函數也可以自定義 --> 7 <com-b @listenEvent="fn"></com-b> 8 {{value}} 9 </div> 10 </template> 11 12 <script> 13 import comB from '@/components/com-b' 14 export default { 15 data() { 16 return { 17 value:'' 18 } 19 }, 20 methods:{ 21 //函數接收一個參數,這個參數就是子組件傳遞的參數 22 fn(data){ 23 this.value=data 24 console.log(data) 25 } 26 }, 27 components: { 28 comB 29 } 30 }