2023-01-12
2023-01-11 本文已影响0人
Strong_Joe
vue 父子组件传值, 传递的是对象, 子组件修改父组件的属性,父组件也发生改变;
需要注意的是,需要将父组件的props传过来的属性设置为自己的data属性,才能修改,才能符合单向数据流的规范。
children: props:{
formParent: {}
} data: {msgObj :this. fromParent}
vue父子组件传值,子组件是个dialog, 通过一个变量来控制子组件的显示和隐藏,
问题: 发现显示和隐藏功能失效
原因分析:页面初始化的时候,子组件已经创建,已经执行生命周期,created,
而此时父组件的传值还没有。
解决: 在子组件上加v-if,初始化的时候不执行子组件的生命周期,当父组件的传值准备好时,v-if为true,让子组件创建,同时拿到父组件的 数据。