组件传值之ref(解决父传子动态绑定问题)
在父组件往子组件传值,子组件中要显示父组件的信息,首先是在网上搜的watch 来监听组组件的props,但是父组件只传一次,后续再更改就没了,所以我用的$refs
props:{params:{type:Object;defult():{return {}
}
}
}watch:{params: {// 监听数据发生变化的处理函数handler(newV) {this.paramsAll = JSON.parse(JSON.stringify(newV)); //将监听到修改的值赋予到dataAttrs中},// 是否开启深度监听,由于我们上面props中是一个Object对象,所以需要开启深度监听功能deep: true,},}
在父组件中用ref
<GoodsClassNav @getParams="getParams" :params="params" ref="GoodsClassNav"></GoodsClassNav>
然后传值调用的methods中的方法
methods:{getParams(){
this.$refs.GoodsClassNav.paramsAll.categoryId = msg;
}
}
这样就可以控制子组件中的值