import React, { Component,Suspense } from 'react'
import {Route,Switch,Redirect} from 'react-router-dom'


export default class RouterView extends Component {
    render() {//路由渲染组件
        let {routers} =this.props;
        let Redir=routers.filter(item=>item.to);
        let Redom=routers.filter(item=>!item.to);
        return (
            <Suspense fallback={<h2>加载中....</h2>}>
                <Switch>
                    {
                        Redir.map((item,i)=><Redirect exact to={item.to} key={i} from={item.from}></Redirect>)
                    }
                    {
                        Redom.map((item,i)=><Route path={item.path} key={i} render={props=>{
                            if(item.children){
                                return <item.component {...props} list={item.children} />
                            }else{
                                return <item.component {...props} />
                            }
                        } } ></Route>)
                    }
                </Switch>
            </Suspense>
        )
    }
}
