import React, { Fragment, lazy, Suspense } from 'react'; import { Redirect, Route, Switch } from 'react-router-dom'; import MainLayout from './layouts/MainLayout'; import LoadingScreen from './components/LoadingScreen'; const routesConfig = [ { exact: true, path: '/404', layout: MainLayout, component: lazy(() => import('./components/NotFound')), }, { path: '*', layout: MainLayout, routes: [ { exact: true, path: '/', component: lazy(() => import('./components/HomeContainer')), }, { component: () => , }, ], }, ]; const renderRoutes = (routes) => (routes ? ( }> {routes.map((route, i) => { const Layout = route.layout || Fragment; const Component = route.component; const key = route.path ? route.path.concat(i) : ''.concat(i); return ( ( {route.routes ? renderRoutes(route.routes) : } )} /> ); })} ) : null); function Routes() { return renderRoutes(routesConfig); } export default Routes;