入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

Vue2传递信息汇总

创建时间:2017-06-05 投稿人: 浏览次数:747

Vue2项目传递信息汇总

 一:父组件传递信息给子组件

1、引入组件
<script>
import fansSelect from "../com_module/fans/fans_select.vue";
export default {
    components: {
        fansSelect
    }
}
</script>
<fans-select :fanData="fanData" :checkId="4444" ></fans-select>
2、子组件获取信息
template>
   <div>{{checkId}}</div>
</template>


<script>
export default {
    props: ["checkId"]  //传递多个信息 props:["ddd","ffff"]
   
}
</script>


<style scoped src="./fans_select.css">

 二:子组件传递信息给父组件

1、子组件定义传递信息
<template>
    <div @change="check()">
       eeeee
    </div>
</template>


<script>
export default {
    methods:{
        check:function(){
            this.$emit("checkUser","ee");
        }
    }
}
</script>


<style scoped src="./fans_select.css">

2、父组件获取信息
<fans-select  @checkUser="checkUser"></fans-select>
<script>
    import fansSelect from "../com_module/fans/fans_select.vue";
    export default {
        data () {    
            return {      
             aaa:"ww"    
            }  
        },
       methods:{
        checkUser:function(data){   //发送的内容
           this.aaa=data;
        },
       }
        components: {
            fansSelect
        }
    }
</script

 二:路由专递信息(query)

1、定义
<router-link :to="{path: "/fans/massmessage", query: {shareIndex: this.shareIndex}}"  class="send_btn">更多查询</router-link>
this.$router.push({path: "/fans/massmessage", query: {shareIndex: this.shareIndex}});
2、获取
this.$route.query.shareIndex

二:路由专递信息(params)

1、定义
{ path: "ordersdetails/:ordersId",component: ordersDetails,meta: {title: "订单详情"}},//在路由中定义
<router-link v-show="bottomShow"  :to="{ path:"/index/ordersdetails/1", query: {invoice:invoice}}" class="send_btn">查看物流</router-link>

2、获取
this.$route.params.ordersId

二:全局专递信息

通过eventBus传递数据
    a、使用前可以在全局定义一个eventBus
    window.eventBus = new Vue();
    b、在需要传递参数的组件中,定义一个emit发送需要传递的值,键名可以自己定义(可以为对象)
    eventBus.$emit("eventBusName", id);
    c、在需要接受参数的组件重,用on接受该值(或对象)
    eventBus.$on("eventBusName", function(val) {<br>   console.log(val)<br>})
    d、最后记住要在beforeDestroy()中关闭这个eventBus
    eventBus.$off("eventBusName");


参考博客:http://www.cnblogs.com/ygtq-island/p/6728137.html
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。