vue组件通讯

父传子

:参数='’参数 ''

 <my-header :ischeckall="ischeckAll"></my-header>

“ischeckAll” 是父组件的数据 :ischeckall是子组件的接受的参数

子组件接受参数的方式 :

注意不放在data中 是放在data外面

 props:["ischeckall"],

子传父

@自定义事件=“自定义事件”

父组件

 <my-list :list="list" @calc="calc" @delListById="delListById"></my-list>

“自定义事件” 是父组件的事件     @自定义事件 是子组件用来接收的事件  并且子组件在接受的时候 可以调用父组件的事件 并且可以带参数来

子组件接受事件的方法   一般写在methods中 

  methods:{
                    add(item,num){
                        this.$emit("calc",item,num);
                     },
                     reduce(item,num){
                        this.$emit("calc",item,num);
                     },
                     del(id){
                        this.$emit("dellistbyid",id);
                     }
                }

跨层级通讯

新建bus

 let bus = new Vue();//一辆空的公交车  

爷组件  bus.$on("事件名字",回调函数)

created() {
            bus.$on("gotolist", () => {  //window.addEventListener("click")
                alert("有人要上车");
                this.activeIndex = 2;
                this.com = "list";
            })
        },

孙组件 bus.$emit("事件的名字")  调用爷组件的bus.$on中的回调函数

  bus.$emit("gotolist");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值