router.js 930 B

123456789101112131415161718192021222324252627282930
  1. import React from 'react';
  2. import { Router, Route, Switch } from 'dva/router';
  3. import { LocaleProvider, Spin } from 'antd';
  4. import zhCN from 'antd/lib/locale-provider/zh_CN';
  5. import dynamic from 'dva/dynamic';
  6. import { getRouterData } from './common/router';
  7. import styles from './index.less';
  8. dynamic.setDefaultLoadingComponent(() => {
  9. return <Spin size="large" className={styles.globalSpin} />;
  10. });
  11. function RouterConfig({ history, app }) {
  12. const routerData = getRouterData(app);
  13. const UserLayout = routerData['/user'].component;
  14. const BasicLayout = routerData['/'].component;
  15. return (
  16. <LocaleProvider locale={zhCN}>
  17. <Router history={history}>
  18. <Switch>
  19. <Route path="/user" render={props => <UserLayout {...props} />} />
  20. <Route path="/" render={props => <BasicLayout {...props} />} />
  21. </Switch>
  22. </Router>
  23. </LocaleProvider>
  24. );
  25. }
  26. export default RouterConfig;