React / React Router,检查它是否第一次导航到某条路线

时间:2018-04-06 07:52:42

标签: javascript reactjs react-router

在我的React应用程序中,我有这个:

  1. 如果您从modsec索引路线开始,会出现一个启动页面,您可以点击关闭启动画面并转到主页的内容。

  2. 如果您从任何其他路线开始,则不会显示启动页面,当您从这些页面转到/路线时,启动页面仍然无法显示。

  3. 在这两种情况下,我想在主页发生后初始化一些/事件监听器(即在您单击启动页面后或从另一个页面导航到索引页面后)。

    目前,我实现这一目标的方法是在Redux中保留window变量。

    1. 如果我从loadState路线开始,点击启动页面会将/设置为"已加载"并且监听器在loadState生命周期内设置。

    2. 如果我从componentWillUpdate上的任何其他路线开始,则componentDidMount将设置为"已加载"。然后,如果我导航到loadState路线,则会在/上设置听众,因为我们会检查componentDidMount是否已加载。"

    3. 但是,我想知道是否有办法避免这两种功能。如果loadState在初始渲染上运行,那将是理想的,因为那样我就可以避免在componentWillUpdate生命周期内进行冗余检查。如果React Router具有最初呈现路径的内置生命周期,则更好的选择。

0 个答案:

没有答案