目录前言 1、 props / $emit 2、ref / $refs 3、eventBus事件总线($emit / $on) 4、依赖注入(provide / inject) 5、$parent /
顺晟科技
2021-07-07 18:04:29
152
业务是这样的:希望通过子组件中的事件回调方式来修改父组件传入的props。通过使用emit(“update:xxx”)的方式能修改父组件的值,但是页面没有刷新,且子组件中的props依旧还是之前的值,有人遇到过这样的问题么,在线求教
顺晟科技:
请你确认一下在父组件调用子组件的地方,绑定props时是否加了sync修饰符,大概像这样
看到你提到了$emit(‘update:****’),猜想你是想使用sync props
搞不懂你在做什么。如果是联动的话,很简单,监听级的value即可。
<child-component :id.sync="someId"></child-component>
Select组件中的值(Options)随着另一个Select组件的选中值的改变而改变,就是所谓的多级联动。如果直接修改reactive类型的值,那么一级select的选中值总会在选择时失效,即选中值无法显示,所以我想的是通过双向绑定的方式方式触发子组件update,但是遇到了我刚才说的这个问题
如果不让的话,可以写一个函数,把props传递进去,就不会管你了。
vue2的话,数组的更新本来就须及时,需要使用Vue.set。vue3的话,基础类型的属性,使用emit提交即可。如果是引用类的(数组、对象)的话,父组件传递一个reactive进去,子组件里面直接读写属性即可,不需要使用emit来折腾了。
09
2022-11
19
2022-10
30
2022-09
23
2022-09
23
2022-09
23
2022-09