React router v4 route events

时间:2017-07-03 08:05:21

标签: javascript reactjs web react-router

我有新的反应,之前我正在使用棱角分明。现在我尝试用反应路由器v4构建一个应用程序。我当前的任务听起来很简单:我想为路由添加预加载器和一些身份验证检查。在角度我会使用像路线改变开始,' routechangesucess'并解决身份验证检查。但是,我检查了路由器文档,但我没有找到这个。我看到的单个选项是使用history.listen(),但它仅在路由更改后触发。所以我的问题是:我怎么知道路线什么时候开始改变,它已经改变了,路线是什么。

以下是我的路由器的样子(我想在预加载器组件中处理此信息):

  ReactDOM.render(
    <Router>
      <Provider store={store}>
        <AppContainer>
          <div>
            <Preloader/>
            <Switch>
              <Route exact path="/" component={Main}/>
              <Route path="/app" component={App}/>
              <Route path="/content" component={Content}/>
              <Route path="*" component={Landing}/>
            </Switch>
          </div>
        </AppContainer>
      </Provider>
    </Router>,
    document.getElementById('main')
  );

1 个答案:

答案 0 :(得分:0)

结帐https://reacttraining.com/react-router/web/example/auth-workflow

您可以扩展Route组件以添加自己的功能。这是非常强大的东西。

学习RR4结帐我的视频(无耻)

https://www.youtube.com/watch?v=Pt_TM6GRTXE&list=PL8vZpHuqa_hPpKUHFlyPkiI4MPexAMhvc