Vue,实现组件属性的双向绑定方式

prop 是单向绑定的:当父组件的属性变化时,将传导给子组件,但是不会反过来

A 中 调用 B 这个组件 A表示的就是父组件 B表示的就是子组件 如果父组件的值发生了变化,将会传导给子组件,但是子组件中发生了变化,由于原来子组件的数据已经展示出来,再次修改则无法直接显示数据修改

解决的办法如下

在子组件的内部
Vue.component("switchbtn", {
    template: "<div @click='change'>{{myResult?'开':'关'}}</div>",
    props: ["result"], // 存贮父组件传过来的值
    data: function () {
        return {
            myResult: this.result // 在data中我们重新声明一个值来存放 父组件传递过来的值
        };
    },
    // 给父组件传过来的值  props: ["result"], result 进行监听
    watch: { 
        result(val) {
            this.myResult = val;//新增result的watch,监听变更并同步到myResult上
        }
    },

参考链接:https://www.cnblogs.com/xxcanghai/p/6124699.html?_t=t

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值