vue中父子組件的參數傳遞和應用示例
1.在父組件中調用子組件,父親傳值給子組件
子組件如下,把要傳給給父親的值放在props中
template> <!--底部導航--> <div class="index-bbar"> <ul class="flex" > <li v-for="(item,index) in liAry" :class="index==licurrent?'active':''"> <router-link :to="item.linkURl"> <span class="flex alignc flexdc"> <img :src="index==licurrent?require('../../'%20+%20item.urlActive):require('../../'%20+%20item.url)" class="img1" ><span>{{item.title}}</span> </span> </router-link> </li> </ul> </div> </template> <script> export default { name: 'Bottom', data () { return { } }, props:['liAry','licurrent'], methods: { } } </script> <style scoped> @import "../../assets/public/css/top.css"; @import "../../assets/public/css/bottom.css"; </style>
父組件的調用的三部曲
首先引入子組件
import Bottom from '@/components/public/Bottom';
註入組件在components中註入
components: {Bottom}
在父親中應用
<template> <Bottom v-bind:liAry='lidata' v-bind:licurrent='guidecurrent'></Bottom> </template>
到這裡就結束瞭,是不是賊快
2.子組件傳值給父組件
父組件在組件上定義瞭一個自定義事件childFn,事件名為parentFn用於接受子組件傳過來的message值。
<!-- 父組件 --> <template> <div class="test"> <test-com @childFn="parentFn"></test-com> <br/> 子組件傳來的值 : {{message}} </div> </template> <script> export default { // ... data: { message: '' }, methods: { parentFn(payload) { this.message = payload; } } } </script>
子組件是一個buttton按鈕,並為其添加瞭一個click事件,當點擊的時候使用$emit()觸發事件,把message傳給父組件
<!-- 子組件 --> <template> <div class="testCom"> <input type="text" v-model="message" /> <button @click="click">Send</button> </div> </template> <script> export default { // ... data() { return { // 默認 message: '我是來自子組件的消息' } }, methods: { click() { this.$emit('childFn', this.message); } } } </script>
在子組件向父親傳值的時候,不可用router-link,不然接受不到父親定義的函數
以上就是vue中父子組件的參數傳遞和應用示例的詳細內容,更多關於vue中父子組件的參數傳遞的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- vue3容器佈局和導航路由實現示例
- Vue實現組件間通信的幾種方式(多種場景)
- Vue-router路由該如何使用
- 詳解vue route介紹、基本使用、嵌套路由
- vue子路由跳轉實現tab選項卡效果