深夜小網(wǎng)站軟文文案
/?如果你是在ts中,那么這個(gè)這個(gè)文件名是router.ts那么這個(gè)<Home/>這里會(huì)報(bào)eslint錯(cuò)誤,所以為了解決這個(gè)錯(cuò)誤,直接改成router.tsx就行
import { RouteObject } from 'react-router-dom';
import Home from '../page/Home';
import About from '../page/About';// react router v6·路由配置
const routes: RouteObject[] = [{path: '/',element: <Home />,},{path: '/about',element: <About />,},{path: '*',element: <div>404</div>,}
];export default routes;
如果說(shuō)你非要用.ts也行,就像下邊這樣,可以避免eslint報(bào)錯(cuò)
// elements.tsx
import React from 'react';
import Home from '../page/Home';
import About from '../page/About';export const HomeElement = <Home />;
export const AboutElement = <About />;// routes.ts
import { RouteObject } from 'react-router-dom';
import { HomeElement, AboutElement } from './elements';const routes: RouteObject[] = [{path: '/',element: HomeElement,},{path: '/about',element: AboutElement,},
];export default routes;
然后就是app.tsx中渲染問(wèn)題,v6版本的useRoutes很好用
// App.tsx
import React from 'react';
import { useRoutes } from 'react-router-dom';
import routes from './router'; // 導(dǎo)入路由配置function App() {const routing = useRoutes(routes);return (<div>{routing}</div>);
}export default App;