Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 反应路由器v4路由事件_Javascript_Reactjs_Web_React Router - Fatal编程技术网

Javascript 反应路由器v4路由事件

Javascript 反应路由器v4路由事件,javascript,reactjs,web,react-router,Javascript,Reactjs,Web,React Router,我是一个新的反应,以前我用的是角度。现在我正在尝试用react router v4构建一个应用程序。我当前的任务听起来很简单:我想为路由添加预加载程序和一些身份验证检查。在angular中,我将使用诸如“routechangestart”、“RouteChangeSuccess”和resolve之类的事件进行身份验证检查。然而,我检查了路由器文档,却没有找到这些。我看到的一个选项是使用history.listen(),但它只有在路由改变后才会触发。所以我的问题是:我怎么知道路线什么时候开始改变,

我是一个新的反应,以前我用的是角度。现在我正在尝试用react router v4构建一个应用程序。我当前的任务听起来很简单:我想为路由添加预加载程序和一些身份验证检查。在angular中,我将使用诸如“routechangestart”、“RouteChangeSuccess”和resolve之类的事件进行身份验证检查。然而,我检查了路由器文档,却没有找到这些。我看到的一个选项是使用
history.listen()
,但它只有在路由改变后才会触发。所以我的问题是:我怎么知道路线什么时候开始改变,它已经改变了,它是什么路线

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

ReactDOM.render(
,
document.getElementById('main')
);
结帐

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

要了解有关RR4的移动,请查看我的视频(无耻)

  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')
  );