FE-Interview icon indicating copy to clipboard operation
FE-Interview copied to clipboard

如何配置 React-Router 实现路由切换

Open lgwebdream opened this issue 5 years ago • 3 comments

lgwebdream avatar Jul 06 '20 16:07 lgwebdream

扫描下方二维码,获取答案以及详细解析,同时可解锁800+道前端面试题。

lgwebdream avatar Jul 06 '20 16:07 lgwebdream

import { Switch,BrowserRouter as Router ,Route} from 'react-router-dom'

<Router>
<NavLink to='/'>首页</NavLink>
<NavLink to='/test'>测试</NavLink>
<Switch>
<Route path='/' component={Home}/>
<Route path='/test' component={Test}/>
</Switch>
</Router>

gujiwuqing avatar Aug 03 '21 09:08 gujiwuqing

配置react Router 实现路由切换

import { useRoutes } from "react-router-dom"
import { Navigate } from 'react-router-dom'
// 引入组件
import Login from "../pages/Login";
import Center from "../pages/Center";
import Music from '../pages/Center/component/Music'
import Game from '../pages/Center/component/Game'
import News from '../pages/Center/component/News'
import Count from '@/pages/Count'
import TodoList from '@/pages/TodoList/index'
import SubmitBottom from '@/components/SubmitBottom'
//路由表
export const routes = [
  {
    path: "/login",
    element: <Login />,
  },
  {
    path: "/count",
    element: <Count />
  },
  {
    path: '/todo',
    element: <TodoList />
  },
  {
    path: '/submitBottom',
    element: <SubmitBottom />
  },
  {
    path: "/center",
    element: <Center />,
    children: [
      {
        path: "/center/music",
        element: <Music />
      },
      {
        path: "/center/news",
        element: <News />
      },
      {
        path: "/center/game/:id?/:type",
        element: <Game />
      }
    ]
  },
  {
    path: "/",
    element: <Navigate to="/center" />
  }
];
const Router = useRoutes(routes)
export default Router

LoveWei0 avatar Jun 09 '23 07:06 LoveWei0