1. 从零搭建大型 Vue3 项目架构
- 技术栈:Vue3 + Vite + TS + Pinia + VueRouter + Axios + ElementPlus;
- 目录规范:按功能模块化(pages/components/hooks/utils/api/store);
- 工程化:ESLint+Prettier 规范代码、Husky 提交校验、CI/CD 自动部署;
- 状态管理:Pinia 分模块,组合式 API 复用逻辑;
- 权限系统:路由守卫+动态路由+按钮指令权限;
- 性能优化:路由懒加载、图片懒加载、gzip、CDN、虚拟滚动。
2. 前端权限系统设计(三面必问)
- 路由权限:后端返回权限路由 → 前端过滤生成可访问路由 → 动态添加;
- 按钮权限:自定义指令
v-permission判断权限; - 数据权限:接口参数/返回值过滤,控制数据展示范围。
3. 组件库设计方案
- API 设计:统一 props 规范、支持插槽/事件/指令;
- 主题系统:CSS 变量 + SCSS 变量,一键切换主题;
- 按需加载:ES 模块 + 插件自动导入;
- 通用性:适配多场景、支持国际化、类型提示。