首页 前端知识 vue父组件给子组件传值,子组件不渲染的原因及解决方法

vue父组件给子组件传值,子组件不渲染的原因及解决方法

2024-04-29 11:04:23 前端知识 前端哥 713 631 我要收藏

父组件传递给子组件的数据,如果是一个复杂对象(例如一个数组或对象),那么子组件只会监听对象的引用而不是对象的内容。这意味着当对象的内容发生变化时,子组件不会更新。

解决:
1、在子组件使用 watch 监听 props传过来的值,如果发现改变,调用forceUpdate刷新视图。

this.$forceUpdate()

2、父组件中声明一个布尔变量,数据发生变化后,切换一下变量状态,可刷新子组件视图。

3、数据发生变化后,在下面调用一下splice方法修改原数组长度(索引、截取长度都为0),数组不变,但视图可成功渲染。

this.list.splice(0, 0)
转载请注明出处或者链接地址:https://www.qianduange.cn//article/6097.html
标签
评论
发布的文章

qt JSON和字符串相互转换

2024-05-05 12:05:04

nlohmann::json从入门到精通

2024-05-05 12:05:00

Android-第十节JSON讲解

2024-05-05 12:05:35

FastJson 框架详解

2024-05-05 12:05:31

MySql操作JSON

2024-05-05 12:05:31

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!