由于某种原因,如果我尝试导航到与当前URL完全一​​样的特定URL,但具有不同的查询或没有查询的相同URL
似乎没有检测到它必须再次mapStateToProps。
如果我运行componentWillReceiveProps,我可以看到React确实检测到了一个变化(接收到当前显示的相同道具),但是由于某种原因,redux却没有。任何想法可能是什么问题?

function mapStateToProps(state) {
    console.log(state);
    return {
        listings: state.mainState.Listings,
        publisher: state.mainState.profilePopUp,
        User: state.mainState.userCookie
    };

}

最佳答案

因此,我为此找到了一种变通的解决方法,根本不知道为什么它甚至是必要的。

只需通过componentWillReceiveProps调度一个动作,就可以强制对您的组件进行更新,并与上一页中的某些信息进行比较,因此它知道它不再位于同一页面上(查询对我有用),并且可以一遍又一遍地停止分发。

如果您不熟悉代码库,则此解决方案看起来不太好,很难理解,所以我只是以另一种方式进行了路由,希望对您有所帮助!

关于javascript - redux不会通过browserHistory.push()强制mapStateToProps,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41363476/

10-10 00:44