当我和我的组件的道具发生变化时,我想要启动一些行为。在过去,我使用了componentWillReceiveProps
,但是current documentation这似乎已被弃用了。文档似乎表明componentDidUpdate
是新建议,但是这会在任何更新时触发,包括更改状态。还提到了getDerivedStateFromProps
,但这必须是静态方法。
我可以编写一些代码来运行所有prevProps
和this.props
,但这似乎是重复的。
答案 0 :(得分:0)
在没有看到代码的情况下,我认为正确的方法是使用getDerivedStateFromProps
在道具发生变化时更新状态,然后让状态更改触发您想要的行为。我无法想到避免使用状态来更新组件的理由,这基本上就是反应的本质。