59 lines
1.7 KiB
JavaScript
59 lines
1.7 KiB
JavaScript
import React from 'react';
|
|
import ReactDOM from 'react-dom';
|
|
import * as serviceWorker from './serviceWorker';
|
|
import { init } from '@rematch/core';
|
|
import { Provider } from 'react-redux';
|
|
import { HashRouter } from 'react-router-dom';
|
|
import { renderRoutes } from 'react-router-config';
|
|
import persistPlugin from '@rematch/persist';
|
|
import storage from 'localforage';
|
|
import { getPersistor } from '@rematch/persist';
|
|
import { PersistGate } from 'redux-persist/lib/integration/react';
|
|
import 'moment/locale/zh-cn';
|
|
import { ConfigProvider } from 'antd';
|
|
import zhCN from 'antd/lib/locale/zh_CN';
|
|
import ScrollReset from './components/ScrollReset';
|
|
import routes from './routes';
|
|
import * as models from './models';
|
|
import moment from 'moment';
|
|
import './index.less';
|
|
import './views/demo.less';
|
|
import DataPreload from './components/DataPreload';
|
|
moment.locale('zh-cn');
|
|
const persistConfig = {
|
|
key: 'root',
|
|
storage,
|
|
blacklist: ['runtime']
|
|
}
|
|
|
|
const store = init({
|
|
models,
|
|
plugins: [persistPlugin(persistConfig)],
|
|
});
|
|
|
|
const persistor = getPersistor(store);
|
|
|
|
function App() {
|
|
return (
|
|
<Provider store={store}>
|
|
<PersistGate persistor={persistor}>
|
|
<DataPreload>
|
|
<HashRouter>
|
|
<ConfigProvider locale={zhCN}>
|
|
<ScrollReset />
|
|
{renderRoutes(routes)}
|
|
</ConfigProvider>
|
|
</HashRouter>
|
|
</DataPreload>
|
|
</PersistGate>
|
|
</Provider>
|
|
);
|
|
}
|
|
|
|
ReactDOM.render(<App />, document.getElementById('root'));
|
|
|
|
// If you want your app to work offline and load faster, you can change
|
|
// unregister() to register() below. Note this comes with some pitfalls.
|
|
// Learn more about service workers: https://bit.ly/CRA-PWA
|
|
serviceWorker.unregister();
|