为什么 componentWillUnmount 在下一个组件 componentWillMount 之后触发?
Why is componentWillUnmount firing after next components componentWillMount?
我有一个包含两个组件的 React/Redux 应用程序。当第一个组件卸载时,我需要清除一部分 redux 状态,因为第二个组件将以该形式出现状态错误。我试图在第一个组件卸载时分派一个清除状态块的操作,但第二个组件在第一个组件 componentWillUnmount
方法被调用之前开始安装。当我在 redux-logger 中查看分派的操作时,我看到第二个组件从 componentWillMount
分派操作,然后从前一个组件调用 componentWillUnmount
分派操作。
这不是预期的行为,是吗?我也在使用 react-router v4。谢谢!
Since React v16,componentWillUnmount
钩子可以异步触发。
这意味着您不能对这些挂钩跨组件调用的顺序(或时间)做出任何假设。
我有一个包含两个组件的 React/Redux 应用程序。当第一个组件卸载时,我需要清除一部分 redux 状态,因为第二个组件将以该形式出现状态错误。我试图在第一个组件卸载时分派一个清除状态块的操作,但第二个组件在第一个组件 componentWillUnmount
方法被调用之前开始安装。当我在 redux-logger 中查看分派的操作时,我看到第二个组件从 componentWillMount
分派操作,然后从前一个组件调用 componentWillUnmount
分派操作。
这不是预期的行为,是吗?我也在使用 react-router v4。谢谢!
Since React v16,componentWillUnmount
钩子可以异步触发。
这意味着您不能对这些挂钩跨组件调用的顺序(或时间)做出任何假设。