当路由是子路由时,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 包装。