控件的子控件数据刷新后得到数据还是之前的
来源:12-3 项目打包发布Android应用
人在塔在_0001
2019-01-12
ListView item里面绘制了一个Buttons控件,刷新数据后,Buttons的数据来源改变了。Buttons里面通过属性得到数据还是上一次的数据,需要再刷新一次,才能正常显示想要的数据。
react native 里面componentWillReceiveProps() 没有参数(react componentWillReceiveProps(nextProps))
写回答
2回答
-
componentWillReceiveProps在新版React中不能再用了,使用:
static getDerivedStateFromProps(nextProps, prevState)
代替,可参考:
https://github.com/reactjs/rfcs/blob/master/text/0006-static-lifecycle-methods.md
对于老的版本RN:
componentWillReceiveProps(nextProps) { this.setFavoriteState(nextProps.projectModel.isFavorite) }
componentWillReceiveProps有个 nextProps参数,可以debug调试一下这个nextProps是否有值,可参考:https://git.imooc.com/coding-89/coding-89/src/c9011e163baf01eb713ff0824d71b0269c86eb43/js/common/RepositoryCell.js
042019-01-15 -
人在塔在_0001
提问者
2019-01-14
ListView中数据改变了,item重新render了,Buttons里面属性数据也改变了,但是Buttons的构造方法没有重新走,直接走的componentWillReceiveProps() 方法,拿不到最新的属性数据
00
相似问题