跳转到内容
返回

像Vue一样使用react路由

场景

习惯了vue里面通过配置文件一样来使用路由,react路由跳转和vue一样都是通过对应的跳转组件进行跳转,没啥区别,但是响应url页面的时候,需要使用很多内置的组件来进行书写,有点繁琐,所以记录一下简单的封装一下常用的RouterView组件,来达到像vue一样简单使用

思路

代码

// RouterView.jsx
import React from "react";
import { Route, Switch } from "react-router-dom";
const RouterView = ({ routes }) => {
  return (
    <Switch>
      {routes.map((item, i) => {
        return (
          <Route
            key={i}
            path={item.path}
            // 这里传递的为当前路由的子路由
            component={() => item.component(item.routes)}
          />
        );
      })}
    </Switch>
  );
};
export default RouterView;

react路由的基本使用

// 路由
const routes = [
  {
    path: "/home/:id",
    exact: true,
    label: "首页",
    component: Home,
  },
];
// 组件
import React from "react";
import { useParams } from "react-router-dom";
export default function () {
  console.log(useParams()); //{id:xxx}
  return <div>Home</div>;
}


上一篇
可视化图表踩坑记录
下一篇
antd menu组件