解决vue组件props传值,对象获取不到的问题 |
您所在的位置:网站首页 › vue对象传值 › 解决vue组件props传值,对象获取不到的问题 |
vue组件props传值,对象获取不到的问题
问题描述: 父组件利用props向子组件传值,浏览器console有这个值,但是获取不到对象里的属性,console对象的属性值,打印出来值为undefined。 父组件定义了testobj这个对象。在父组件接口中给这个值重新赋值。子组件接受这个值,谷歌浏览器console能看到这个值,但是取不到属性的值。watch也监听不到testobj对象值的变化代码如下: 父组件代码 //在data中定义testobj testobj: {} //接口返回数据后,给testobj对象赋值 this.testobj.name = res.map.sysUser.userRealName; this.testobj.role_name = res.map.sysRole.roleName;子组件代码 export default { props: { test: Object }, mounted(){ console.log('mnop', this.test, this.test.name, this.test.role_name); }, watch: { test(newVal) { console.log('xxx', newVal); } }, }控制台console打印结果:
解决方法: 方法一:可以用JSON.parse(JSON.stringify(this.testobj)) 方法二:用以下形式给对象赋值 参考链接:https://juejin.cn/post/6844903860574617614 https://www.cnblogs.com/jervy/p/13533196.html 问题:都说父组件传值的命名规则不能用驼峰,但是我在本地测试没有报错,值也可以接收到。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |