vue父组件给子组件传值,子组件不渲染的原因及解决方法
2024-01-07 18:04:23
父组件传递给子组件的数据,如果是一个复杂对象(例如一个数组或对象),那么子组件只会监听对象的引用而不是对象的内容。这意味着当对象的内容发生变化时,子组件不会更新。
解决:
1、在子组件使用 watch 监听 props传过来的值,如果发现改变,调用forceUpdate刷新视图。
this.$forceUpdate()
2、父组件中声明一个布尔变量,数据发生变化后,切换一下变量状态,可刷新子组件视图。
3、数据发生变化后,在下面调用一下splice方法修改原数组长度(索引、截取长度都为0),数组不变,但视图可成功渲染。
this.list.splice(0, 0)
文章来源:https://blog.csdn.net/Street_Partners/article/details/135409415
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!