# 项目基础代码架构说明
- 如果对你有帮助的话,欢迎star
- demo 演示地址:[https://ibwei.github.io/vue3-ts-base/](https://ibwei.github.io/vue3-ts-base/)
#### 包管理工具
- 建议使用 yarn,也是 vue-cli4.0+ 默认工具
#### 主要用到的库
- vue 全家桶 vue3 + vue-router + vuex + typescript
- http 请求:axios
- ui 库:ant-design-vue.
- 提交规范:git cz commitizen
- 版本更改历史: changelog
- 文档工具:typedoc
- 代码检查:eslint+eslint-typescript,格式化:prettier.提交之前检查与修复:lint-staged
- 测试用例:mocha,ts-node
- webpack 插件:style-resources-loader(全局 less)webpack-bundle-analyzer(包分析工具) splitChunks(代码分离)
#### 代码基础架构说明
```
|-- 根目录
|-- dist 项目 build 之后的文件夹
|-- docs 文档生成的根目录位置
|-- public 项目静态资源,不经过 webpack,以及默认的模版,适合存放第三方压缩好的资源
|-- src 主要的开发目录
| |-- @types 项目共用的 type
| |-- App.vue 页面渲染根节点
| |-- main.ts 入口文件
| |-- shims-vue.d.ts vue 文件类型的 type
| |-- api http 请求相关
| | |-- apiList.ts api 接口列表
| | |-- axios.ts 业务请求封装
| | |-- editor.ts 其他业务封装
| | |-- user.ts api 请求模块
| |-- assets 存放静态资源,这个文件夹下的文件会走 webpack 压缩流程
| |-- components
| | |-- index.ts 自动注册脚本
| | |-- global 自动注册的全局组件
| | |-- ...其他非全局注册的模块
| |-- config 全局静态配置,不可更改项
| |-- layout 页面页面骨架
| |-- plugins 存放第三方插件
| | |-- index.ts 插件挂载入口
| |-- router 路由
| | |-- index.ts 路由入口
| |-- store vuex
| | |-- modules 多个模块
| | |-- index.ts 自动装载模块
| | |-- app app 模块
| |-- styles 全局样式,一句 ui 库主题样式
| | |-- \_variables.less
| | |-- test.less
| |-- utils 常用函数以及其他有用工具
| | |-- common.ts
| |-- views 页面级组件
| |-- Home.vue 正常页面
| |-- test 组件测试页面
| |-- Test.vue
|-- tests 测试用例
|-- api api 模块
|-- unit 单元测试
|-- .czrc 提交规范选项设置
|-- .editorconfig vscode 编辑器 设置
|-- .env.development 开发环境配置
|-- .env.preview 测试环境配置
|-- .env.production 生产环境配置
|-- .eslintignore eslint 要忽略的文件夹
|-- .eslintrc.js eslint 规则配置
|-- .gitattributes github 语言选项设置
|-- .gitignore git 忽略的文件
|-- .gitlab-ci.yml gitlab CI/CD 配置
|-- .prettierrc.js 格式化插件配置
|-- CHANGELOG.md 版本更改说明
|-- Dockerfile 如果需要容器部署
|-- README.md 项目说明
|-- babel.config.js babel 设置
|-- global.d.ts 全局的 type
|-- package.json npm 配置
|-- tsconfig.json typescript 配置
|-- typedoc.json 文档配置文件
|-- vue.config.js vue-cli 脚手架配置文件
```
#### 组件编写
- [x] 支持 tsx 方式编写页面,在.tsx 文件或者 class-component 里写 tsx.
- [x] 支持 class-component 写法.
- [x] 同时支持(.vue|.tsx.|.ts) 编写页面,defineComponent 以及 class-componnet 都支持智能提示.
#### 样式配置
> 均通过在 vue-cli 中配置 webpack 实现.
- [x] 自动注入全局样式
- [x] 配置全局 less 变量
- [x] 支持自定义 UI 库的主题颜色
#### 网络请求
- [x] 基于 axios 封装脱离具体业务逻辑的网络请求,支持编写脱离浏览器环境的测试用例.(跟业务无关)
- [x] 基于具体业务逻辑再次封装网络请求 (跟业务相关,此项需要依据具体后台应用接口编写)
#### 数据状态管理
- [x] 建立应用数据状态管理
- [x] 编写更加简易读取的mutation方法,并完善 type 【新增】
- [x] 支持多个模块,以及自动装载模块
- [x] 支持持久化
#### UI 库
- [x] 添加 ant-design-vue,支持组件按需加载
- [x] 将 UI 库部分功能如 message 添加到每个组件实例
#### 插件与常用工具函数
- [x] 引用常用工具函数
- [x] 常用 hook
#### 配置
- [x] 配置 webpack,分离开发/测试/生产环境配置.
- [x] 添加 webpack 常用插件,优化打包配置.
- [x] 根据环境配置 vue-cli 环境变量(环境相关)
- [x] 配置应用全局静态常量(业务相关)
- [x] 完成 tsconfig 相关配置
- [x] 增加编辑器配置
#### 开发工具
- [x] eslint 代码检查,配置 prettier 格式化工具,使检查规则和格式化规则一致
- [x] 新增提交规范 git cz commitizen,统一代码提交规范
- [x] 为没有 type 的库和变量添加 shims
#### CI/CD
- [x] 配置自动构建/持续集成配置文件(与部署相关,需结合到具体项目部署情况)
#### 文档
- [x] 使用 TYPEDOC 搭建项目文档应用
- [x] 在提交规范的基础上,增加版本更改历史,自动生成 changelog
- [x] 配置 http-server 启动文档应用
#### 测试用例
- [x] 支持编写 js,ts 的测试用例
## 安装依赖
```
yarn install
npm install
```
### 开发模式
```
yarn serve
npm run serve
```
### 生产环境
```
yarn build
npm run build
```
### 测试用例
- api 模块开发环境下单元测试
```
npm run test-dev:api
```
- api 模块常规单元测试
```
npm run test:api
```
- 查看打包结果分析
```
npm run analysis
```
### 更多问题
如果有问题,请提 issue 说明 => [传送门](https://github.com/ibwei/vue3-base).
没有合适的资源?快使用搜索试试~ 我知道了~
一个基于vue3+typescript+ant-design-vue搭建的基础代码库,有完善的类型系统,有助于快速搭建vue3的...
共119个文件
ts:48个
vue:16个
png:9个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 181 浏览量
2024-12-01
16:45:47
上传
评论
收藏 6.74MB ZIP 举报
温馨提示
项目基础代码架构说明如果对你有帮助的话,欢迎stardemo演示地址https://ibwei.github.io/vue3-ts-base/包管理工具建议使用yarn,也是vue-cli4.0+默认工具主要用途到库vue全家桶 vue3 + vue-router + vuex + typescripthttp 请求axiosui 库:ant-design-vue。提交规范:git cz commitizen版本更改历史: changelog文档工具typedoc代码检查eslint+eslint-typescript,整理prettier.提交之前检查与修复lint-staged测试任务mocha,ts-nodewebpack 插件:style-resources-loader(全局 less)webpack-bundle-analyzer(包分析工具) splitChunks(代码分离)代码基础架构说明|-- 根目录 |-- dist 项目 build 之后的文件夹 |-- docs 文档生成的根目录位置 |-- public
资源推荐
资源详情
资源评论
收起资源包目录
一个基于vue3+typescript+ant-design-vue搭建的基础代码库,有完善的类型系统,有助于快速搭建vue3的基础代码架构 .zip (119个子文件)
commit-msg 80B
normalize.css 7KB
.czrc 1KB
demo 1KB
.env.development 22B
Dockerfile 50B
.editorconfig 564B
Helvetica.eot 26KB
.eslintignore 13B
.gitattributes 107B
.gitignore 293B
.gitignore 2B
index.html 691B
favicon.ico 4KB
vue.config.js 5KB
.eslintrc.js 1KB
.prettierrc.js 220B
.commitlintrc.js 119B
babel.config.js 65B
package-lock.json 1.49MB
package.json 3KB
tsconfig.json 944B
typedoc.json 60B
antd.less 843B
var.less 838B
common.less 637B
iconfont.less 588B
index.less 100B
tsxpage.module.less 88B
LICENSE 1KB
yarn.lock 467KB
CHANGELOG.md 9KB
README.md 6KB
README.md 1KB
Helvetica.otf 46KB
h-slider1.png 3.52MB
h-online-p1.png 1.2MB
h-online-p2.png 549KB
online-p1.png 477KB
h-online-b-bg.png 248KB
h-online-p3.png 150KB
online-p2.png 150KB
logo.png 7KB
tag-icon.png 981B
pre-commit 57B
.env.preview 21B
.env.production 27B
common.ts 13KB
index.ts 4KB
axios.ts 4KB
user.ts 4KB
team.ts 4KB
actions.ts 3KB
manage.ts 3KB
index.ts 3KB
utils.ts 2KB
cloudrole.ts 1KB
example.spec.ts 1KB
state.ts 1KB
getters.ts 1KB
index.ts 1016B
index.ts 928B
actions.ts 917B
state.ts 792B
antd.ts 782B
index.ts 758B
color.ts 756B
main.ts 709B
mutations.ts 606B
global.d.ts 577B
index.ts 572B
index.ts 448B
about.ts 436B
index.ts 418B
state.ts 391B
common.ts 375B
api.spec.ts 339B
state.ts 313B
app.ts 286B
tsx.ts 280B
shims-vue.d.ts 252B
zhCN.ts 220B
editor.ts 193B
validator.ts 180B
mutations.ts 164B
en.ts 125B
mutations.ts 106B
mutations.ts 106B
mutations.ts 106B
modal.ts 54B
actions.ts 24B
getters.ts 24B
actions.ts 24B
getters.ts 24B
getters.ts 24B
TsxPage.tsx 555B
Helvetica.ttf 18KB
资源内容.txt 793B
标签.txt 35B
Selector.vue 11KB
共 119 条
- 1
- 2
资源评论
徐浪老师
- 粉丝: 8523
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于PHP的FeelDesk工单管理系统开源版设计源码
- 基于Antv-X6的组态编辑器与可视化设计源码
- factoryio2.5工厂流水线仿真程序,期末专周可用,多个场景可以咨询 使用简单的梯形图与SCL语言编写,通俗易懂,起到抛砖引玉的作用,比较适合有动手能力的入门初学者 软件环境: 1、西门子编程
- 基于公有云平台的OpenIoT项目设计源码
- 基于微信小程序文件系统的MxLocalBase本地数据库设计源码
- 基于C语言的2023级寒假实践打地鼠游戏设计源码
- 基于matlab的孔入式静压轴承程序,进油孔数为4个,采用有限差分计算轴承油膜厚度及油膜压力 程序已调通,可直接运行
- 控制电机-感应电动机转差型矢量控制伺服模型系统 仿真模型+实验报告(内附实验参数,仿真波形等) 注意:matlab版本需在2016a以下,否则可能打不开
- 控制电机-正弦波永磁同步电动机矢量控制系统仿真 仿真模型+实验报告(内附实验参数,仿真波形等) 注意:matlab版本需在2016a以下,否则可能打不开
- 基于扰动观测器的永磁同步电机(PMSM)模型预测控制(MPC)仿真 速度外环基于模型预测控制、电流内环基于无差拿控制搭建,控制效果理想,模块程序设计通俗易通
- 基于Laravel的简化Smarty模板引擎设计源码
- NSGA2遗传算法多目标优化 三维视图 寻优多个函数(函数类型见图二类型),出图为三维红色为帕列托(图一), 带最终结果图(图三)
- 基于graqhql/mongodb/nodejs/nuxtjs的Vue跨世代实时在线文档编辑系统设计源码
- 基于Java的用户线程模型设计源码
- 基于Rust Axum框架的Web后端项目设计与源码实践
- 基于HTML、CSS和JavaScript的eui后台UI框架设计源码预览版账号密码提供
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功