当路由是子路由时,React 路由器不会触发 componentWillUnmount
React router wont trigger componentWillUnmount when the route is a sub-route
当路由是子路由时,我没有看到 react-router 卸载组件
因此,即使我在 path/1 和 path/2 之间切换,componentWillUnmount 也永远不会为 ComponentForRoute 实例调用。有什么建议么?这是 react-router 应该如何工作吗?如果是这样,对处理路线变更有什么建议吗?
尝试使用 componentWillReceiveProps,但我想它现在已被弃用了?
<Router history={history}>
<Route path="path/:paramId" component={ComponentForRoute} />
</Router>
componentDidUpdate (prevProps) {
if (this.props.location !== prevProps.location) {
//YOUR CODE HERE
}
}
此外,组件必须用 withRouter
包装。
当路由是子路由时,我没有看到 react-router 卸载组件
因此,即使我在 path/1 和 path/2 之间切换,componentWillUnmount 也永远不会为 ComponentForRoute 实例调用。有什么建议么?这是 react-router 应该如何工作吗?如果是这样,对处理路线变更有什么建议吗?
尝试使用 componentWillReceiveProps,但我想它现在已被弃用了?
<Router history={history}>
<Route path="path/:paramId" component={ComponentForRoute} />
</Router>
componentDidUpdate (prevProps) {
if (this.props.location !== prevProps.location) {
//YOUR CODE HERE
}
}
此外,组件必须用 withRouter
包装。