25 lines
670 B
TypeScript
25 lines
670 B
TypeScript
|
import { Suspense } from 'react';
|
||
|
import NotPermission from '~/layouts/exception/403';
|
||
|
import NotFound from '~/layouts/exception/404';
|
||
|
import routes from '~react-pages';
|
||
|
|
||
|
const Index = () => {
|
||
|
const [navUserRows] = useModel(systemModel, (systemModel) => [systemModel.navUserRows]);
|
||
|
|
||
|
const userRoutes = routes.map((route) => resolveRoute({ navRows: navUserRows, route, element: <NotPermission /> }));
|
||
|
|
||
|
return (
|
||
|
<Suspense
|
||
|
fallback={
|
||
|
<Row className="bg-theme-layout flex-center wh-full">
|
||
|
<Spin />
|
||
|
</Row>
|
||
|
}
|
||
|
>
|
||
|
{navUserRows.length ? useRoutes(userRoutes) : <NotFound />}
|
||
|
</Suspense>
|
||
|
);
|
||
|
};
|
||
|
|
||
|
export default Index;
|