当前位置: 首页 > wzjs >正文

网站后台做链接aso100官网

网站后台做链接,aso100官网,wordpress单页瀑布流,昆明网站建设哪家最好1. 项目结构 src/ ├── router/ │ ├── rootRoute.tsx │ ├── staticRoutes.tsx │ ├── dynamicRoutes.tsx │ └── index.tsx ├── main.tsx ├── pages/ │ ├── Home.tsx │ ├── About.tsx │ └── Admin.tsx └── components/└─…

1. 项目结构

src/
├── router/
│   ├── rootRoute.tsx
│   ├── staticRoutes.tsx
│   ├── dynamicRoutes.tsx
│   └── index.tsx
├── main.tsx
├── pages/
│   ├── Home.tsx
│   ├── About.tsx
│   └── Admin.tsx
└── components/└── Navigation.tsx

2. router/rootRoute.tsx

根路由负责放 Outlet:

import { createRootRoute, Outlet } from '@tanstack/react-router';
import Navigation from '@/components/Navigation'; // 导航栏export const rootRoute = createRootRoute({component: () => (<div><Navigation /><Outlet /></div>),
});

3. router/staticRoutes.tsx

这里放不需要权限的静态路由,比如首页、关于页:

import { createRoute } from '@tanstack/react-router';
import { rootRoute } from './rootRoute';
import Home from '@/pages/Home';
import About from '@/pages/About';export const homeRoute = createRoute({getParentRoute: () => rootRoute,path: '/',component: Home,
});export const aboutRoute = createRoute({getParentRoute: () => rootRoute,path: '/about',component: About,
});

4. router/dynamicRoutes.tsx

这里根据权限动态生成路由,比如 admin 权限才能看到:

import { createRoute } from '@tanstack/react-router';
import { rootRoute } from './rootRoute';
import Admin from '@/pages/Admin';export const adminRoute = createRoute({getParentRoute: () => rootRoute,path: '/admin',component: Admin,
});

5. router/index.tsx

import { createRouter } from '@tanstack/react-router';
import { rootRoute } from './rootRoute';
import { homeRoute, aboutRoute } from './staticRoutes';
import { adminRoute } from './dynamicRoutes';// ⚡️ 动态控制路由
const user = {role: 'admin', // 你可以换成从登录信息里拿
};const childrenRoutes = [homeRoute, aboutRoute];// 如果是管理员,加上 admin 页面
if (user.role === 'admin') {childrenRoutes.push(adminRoute);
}// 组装 router
export const router = createRouter({routeTree: rootRoute.addChildren(childrenRoutes),
});// 类型声明
declare module '@tanstack/react-router' {interface Register {router: typeof router;}
}

6. main.tsx 使用

入口不变,还是:

import { RouterProvider } from '@tanstack/react-router';
import { router } from './router';function App() {return <RouterProvider router={router} />;
}export default App;

✨ 总结

router/ 目录:拆成 root、静态路由、动态路由。
index.tsx 动态组合出符合权限的路由。

保持代码清晰又灵活,后期新增权限、新页面非常方便!

http://www.dtcms.com/wzjs/185414.html

相关文章:

  • 惠州建设网站公司温州seo外包公司
  • 做智能网站平台企业网站推广优化公司
  • 网站怎么做播放窗口百度浏览器网页
  • 织梦网站后台logo删除凡科建站代理
  • 深圳企业网站建设搜索引擎优化是什么意思
  • 广州市建设注册中心网站武汉seo网站优化技巧
  • 校园网站怎么做无锡网站建设公司
  • 做网站实验体会谷歌seo排名优化
  • 2个女人做暧暧网站班级优化大师使用指南
  • 网站建设维护的方案推广公司产品
  • 腾讯云 wordpress建站百度站长平台快速收录
  • wordpress怎么弄网站网站怎么被收录
  • 香港网站建设展览怎么制作个人网页
  • 有专门做英文字幕的网站吗模板免费下载网站
  • 滨州内做网站系统的公司站长之家权重查询
  • 建设企业网站对公廊坊网络推广优化公司
  • 公司网站兰州建设需要多少钱提高网站流量的软文案例
  • 嘉善在线做网站吗合肥网站建设优化
  • 福州网站开发私人公司管理培训课程大全
  • 做网站的公司成本谷歌浏览器下载手机版官网中文
  • 网站风格介绍适合女生去的培训机构
  • 只有一个人网站开发商品标题seo是什么意思
  • 企业网站 appseo做的好的网站
  • 设计感网站买号链接
  • 重庆工厂网站建设适合口碑营销的产品
  • 网站建设解决方网站seo排名
  • 雅虎做网站推广英文网站设计公司
  • 湘潭做网站选择磐石网络网址大全导航
  • 2016年网站建设方案ppt重庆seo关键词优化服务
  • app开发和网站开发长春seo外包