index.js
1.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import React,{Component,lazy,Suspense} from 'react'
import {
BrowserRouter as Router,
Switch,
Route,
} from "react-router-dom";
import Load from "../component/loading/index.js";
//import Demo from "../view/index/index";
//const Demo = lazy(()=>import(/* webpackChunkName: "Index" */ "../view/index/index.js"))
import App from "./App.js";
let List = [ { path:"/",component:lazy(()=>import(/* webpackChunkName: "Index" */ "../view/index/index.js"))}];
class Routers extends Component{
state={
List:[]
}
componentWillMount(){
let List = [
...this.state.List,
...App //当前模块,含入口
]
this.setState({List})
}
render(){
const {List} = this.state;
return <Router>
<Switch>
{
List.map((item,ind)=>{
return <Route exact path={item.path} key={ind}
render={(props)=>(
<Suspense fallback={Load()}>
<item.component {...props} />
</Suspense>
)}
>
</Route>
})
}
{/* <Route exact path="/">
<Suspense fallback={Load()}>
<Demo />
</Suspense>
</Route> */}
</Switch>
</Router>
}
}
export default Routers