# com.moujitx.metro.web **Repository Path**: moujitx/com.moujitx.metro.web ## Basic Information - **Project Name**: com.moujitx.metro.web - **Description**: metro web - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: https://metro.moujitx.cn - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-25 - **Last Updated**: 2025-12-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ✨ Start - Template: [southliu/South-Admin-React](https://github.com/southliu/south-admin-react) - TechStack: `React`,`Typescript`,`Vite`,`Antd` # 💻 Development - Install Dependencies ```bash yarn install ``` - Run Dev ```bash yarn dev ``` - Build ```bash yarn build ``` # 📝 Environment ```js // .env VITE_TIANDITU_KEY_1 = '' VITE_TIANDITU_KEY_2 = '' VITE_AMAP_KEY = '' ``` # 🧩 图标(iconify) - 参考 [iconify官方地址](https://icon-sets.iconify.design/) - VS Code安装Iconify IntelliSense - 图标内联显示和自动补全 # 📕 Q&A常见问题 ## 1. 页面权限如何配置? 1. 通过登录接(/user/login)或重新授权接口(/user/refresh-permissions)获取permissions权限数据。 2. 通过菜单接口(/menu/list)获取data中的rule权限数据,这个rule数据影响菜单显示,如果没返回rule则一直都显示。 3. 页面内权限参考src/pages/system/menu.index.tsx文件内的pagePermission数据,pagePermission.page是显示页面的权限,根据第一点返回的permissions进行匹配。 ## 2. 路由如何配置? 路由根据文件夹路径自动生成,路径包含以下文件名或文件夹名称则不生成: * login * forget * components * utils * lib * hooks * model.tsx * 404.tsx 可自行在 src/router/utils/config.ts 修改路由生成规则。 ## 3. 菜单如何配置? 提供了两种方式配置菜单: 1. 动态菜单,通过菜单接口(/menu/list)获取菜单数据。 2. 静态菜单,需要静态菜单将/src/hooks/useCommonStore.ts中的useCommonStore中的menuList改为defaultMenus。 ```js // src/hooks/useCommonStore.ts import { defaultMenus } from '@/menus'; // const menuList = useMenuStore(state => state.menuList); // 菜单数据 const menuList = defaultMenus; ```