1. 程式人生 > 實用技巧 >vue中父傳子,子傳父,兄弟元件傳值方法合集

vue中父傳子,子傳父,兄弟元件傳值方法合集

1.父傳子

//父元件
<father-component :nameData="name"></father-component>
export default{
    data(){
       name'123'
    }
}
//子元件 
<child-component>{{nameData}}</child-component>
export default{
  props:{
    nameData:{
      type:String,
      default:()=>''
    }
  }
}

2.子傳父

//父元件
<father-component " @father="getName"></father-component> export default{ method:{ getName(nameData){ console.log(nameData) } } } //子元件 <child-component @cllick="child">{{nameData}}</child-component> export default{   data(){ nameData:'123' } } method:{ child(){ this.$emit('father',nameData) } }

3.兄弟元件傳參

在main.js加入
export var Bus = new Vue();

//元件A
<A @click="send"></A>
import {Bus}   from '../main.js'
export default{
    data(){
        news:'1111'
     },
    methods:{
       send(){
           Bus.$emit('buses',this.news)
        }
    }
}
//元件B
<B></B>
import {Bus}   from '../main.js'  
export default{
    data(){
        b:''
     },
    mounted(){
       Bus.$on('buses',function(b)=>{
           this.b = b //b=111
        })
    }
}