我以为在componentWillUpdate被召唤时,我可以阅读最新的状态,即状态this.state.但是,在我仔细检查文件后,我意识到自己错了.事实是,即使在之后componentWillUpdate被调用this.state,它仍然会读取"旧"状态.这个设计有什么意义?怎么componentWillUpdate有用?
componentWillUpdate是一个React生命周期方法(参见这里:https://facebook.github.io/react/docs/component-specs.html#lifecycle-methods),它在渲染之前立即被调用,这是一个调用this.setState.这就是为什么旧的状态仍然可供你使用,以及它对你如何有用超出了这个网站imho的范围(可以用来做一个api调用记录一个动作已发生注意到以前的状态或各种事情).
请注意,componentWillUpdate事实上它确实接收nextState作为传递给它的对象,因此如果你也想要它们,你可以在那里访问它们.
如果你想在渲染后获得状态,你应该调查componentDidUpdate,然后它将具有旧的状态.
| 归档时间: |
|
| 查看次数: |
2286 次 |
| 最近记录: |