# vue-admin-template **Repository Path**: deng-yingcong/vue-admin-main ## Basic Information - **Project Name**: vue-admin-template - **Description**: Vue 3 + TypeScript + Vite + Pinia + Vue-Router - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-06-11 - **Last Updated**: 2023-06-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: vue-router, Pinia, TypeScript, vue3 ## README ## Vue 3 + TypeScript + Vite ### 项目技术栈: Vue3 + TypeScript + Vite + Pinia + Scss + axios + VueRouter ### 项目使用 eslint+stylelint+prettier 来对我们的代码质量做检测和修复, 使用 husky 来做 commit 拦截, 使用 commitlint 来统一提交规范, 使用 preinstall 来统一包管理工具。 ## 项目目录说明 .husky commit-msg 强制 git 提交规范 pre-commit git 提交时,执行pnpm run format来自动的格式化我们的代码。 public 静态资源 scripts 强制使用 pnpm 包管理器工具 src 项目文件 api 项目接口 assets 静态资源 components 组件 hooks hook router 路由 store pinia 仓库 styles 常用的变量,样式 types 声明 ts 的规范 ulits 工具库 views 路由页面 App.vue main.ts .env.development 开发环境 .env.production 生产环境 .env.test 测试环境 .eslintignore .eslintrc.cjs .gitignore .prettierignore .stylelintignore .stylelintrc.cjs commitlint.config.cjs index.html package.json pnpm-lock.yaml prettierrc.json tsconfig.json tsconfig.node.json vite.config.ts ### 运行指令 pnpm run dev 运行项目 pnpm run build 打包项目 build:test 测试环境 build:pro 生产环境 preview 格式化我们的 js 和 css,html 代码 lint 检测语法规范 fix 修改不规范的语法 ### 项目规范 强制使用 pnpm,使用 npm,yarn 等会报错 git 提交规范 'feat',//新特性、新功能 'fix',//修改 bug 'docs',//文档修改 'style',//代码格式修改, 注意不是 css 修改 'refactor',//代码重构 'perf',//优化相关,比如提升性能、体验 'test',//测试用例修改 'chore',//其他修改, 比如改变构建流程、或者增加依赖库、工具等 'revert',//回滚到上一个版本 'build',//编译相关的修改,例如发布版本、对项目构建或者依赖的改动 必须是 git commit -m 'fix: xxx' 符合类型的才可以,并且冒号后面是需要空一格的。运行 git 提交代码时会自动格式化代码。 ## mitt 全局事件总线的使用 // @ts-ignore 忽略 ts 引入:import emitter from "@/utils/mitt.ts"; 订阅事件 : emitter.on("search-change", (obj: string) => { console.log(obj + "好的"); }); 发布事件 : emitter.emit("search-change", "八百呢"); 移除指定事件: emitter.off('newTask') 移除全部事件: emitter.all.clear()