README.md 8.2 KB
Newer Older
陈文彬 已提交
1 2
<p align="center">
  <a href="https://github.com/anncwb/vue-vben-admin" target="_blank">
V
vben 已提交
3
    <img alt="VbenAdmin Logo" width="200" src="./.github/res/imgs/logo.png">
陈文彬 已提交
4 5
  </a>
</p>
V
vben 已提交
6
<h2 align="center">VUE VBEN ADMIN2.0</h2>
陈文彬 已提交
7

C
chen-xt 已提交
8
**中文** | [English](./README.en-US.md)
V
vben 已提交
9 10 11 12 13

[更新日志](CHANGELOG.md)

- [介绍](#介绍)
- [gitHub 地址](#github-地址)
V
vben 已提交
14
  - [精简版地址](#精简版地址)
V
vben 已提交
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
- [预览地址](#预览地址)
- [文档](#文档)
- [预安装](#预安装)
  - [环境要求](#环境要求)
  - [UI 框架](#ui-框架)
  - [图标](#图标)
  - [插件](#插件)
  - [建议开发环境](#建议开发环境)
- [安装](#安装)
- [使用](#使用)
  - [开发环境](#开发环境)
  - [打包](#打包)
  - [格式化](#格式化)
  - [其他](#其他)
- [Git 提交规范](#git-提交规范)
- [代码贡献](#代码贡献)
- [已完成功能](#已完成功能)
- [正在开发的功能](#正在开发的功能)
V
vben 已提交
33
- [浏览器支持](#浏览器支持)
V
vben 已提交
34 35 36
- [加入我们](#加入我们)

## 介绍
陈文彬 已提交
37

陈文彬 已提交
38
该分支为 2.0 新分支,使用 vue3 进行开发。
陈文彬 已提交
39

陈文彬 已提交
40
1.0 分支请切换到`master`分支。1.0 采用`vue2.6`+`vue-composition-api`+`vue-cli`开发
陈文彬 已提交
41

N
nebv 已提交
42
项目基于`ant-design-vue`,`typescript`,`vue3.0`,`vite`,`tsx`实现的 vue3 风格的后台管理系统,
陈文彬 已提交
43

V
vben 已提交
44
## gitHub 地址
陈文彬 已提交
45

V
vben 已提交
46 47
[vue-vben-admin2.0](https://github.com/anncwb/vue-vben-admin) - `main` 分支

V
vben 已提交
48 49 50 51
### 精简版地址

[vue-vben-admin-thin-next](https://github.com/anncwb/vben-admin-thin-next)

V
vben 已提交
52 53
## 预览地址

V
vben 已提交
54 55 56
- [2.0 在线预览](https://vvbin.cn/next/)

- [2.0 精简版 在线预览](https://vvbin.cn/thin/next/)
陈文彬 已提交
57

N
nebv 已提交
58 59
测试账号: vben/123456

陈文彬 已提交
60
<p align="center">
V
vben 已提交
61 62 63
    <img alt="VbenAdmin Logo" width="100%" src="./.github/res/imgs/preview1.png">
    <img alt="VbenAdmin Logo" width="100%" src="./.github/res/imgs/preview2.png">
    <img alt="VbenAdmin Logo" width="100%" src="./.github/res/imgs/preview3.png">
陈文彬 已提交
64 65
</p>

V
vben 已提交
66
## 文档
陈文彬 已提交
67

V
vben 已提交
68
2.0 文档还没开始写。后续补上。
陈文彬 已提交
69

V
vben 已提交
70
## 预安装
陈文彬 已提交
71

V
vben 已提交
72
### 环境要求
陈文彬 已提交
73

V
vben 已提交
74 75
- `Node.js`: - 版本最好大于 `12.0.0`
- `yarn` > `npm` > `cnpm`: - 包管理工具.
陈文彬 已提交
76

V
vben 已提交
77
### UI 框架
陈文彬 已提交
78

79
- [Tailwind CSS](https://tailwindcss.com/) - 2.0.0-beta.5 已删除
V
vben 已提交
80
- [Ant Design Vue 2.0](https://2x.antdv.com/docs/vue/introduce-cn/)
陈文彬 已提交
81

V
vben 已提交
82
### 图标
陈文彬 已提交
83

V
vben 已提交
84 85 86
- [Ant Design Vue Icon Component](https://2x.antdv.com/components/icon-cn/) - 按需引入所需图标.
- [Iconify](https://iconify.design) - 使用任何图标集中的图标 [Icônes](https://icones.netlify.app/)
- [PurgeIcons](https://github.com/antfu/purge-icons) - 仅打包所使用到的图标.
陈文彬 已提交
87

V
vben 已提交
88
### 插件
陈文彬 已提交
89

V
vben 已提交
90 91 92 93 94 95 96 97 98
- [Vue Router Next](https://github.com/vuejs/vue-router-next)
- [Vuex Next](https://github.com/vuejs/vuex)
- [vuex-module-decorators](https://github.com/championswimmer/vuex-module-decorators) - vuex 模块化
- [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - 基于 vite 的 mock 插件.
- [vue-i18n](https://github.com/intlify/vue-i18n-next) - 国际化
- [lodash-es](https://github.com/lodash/lodash) - JavaScript 实用程序库
- [moment](https://github.com/moment/moment) - 时间操作库
- [axios](https://github.com/axios/axios) - Http 数据交互
- [TypeScript](https://www.typescriptlang.org/)
陈文彬 已提交
99

V
vben 已提交
100 101 102 103 104 105 106 107 108 109 110
### 建议开发环境

- `Git`: - 版本管理工具
- `Visual Studio Code` - (VSCode): 最新版本
  - [VS Code Extensions](./.vscode/extensions.json)
    - [Iconify IntelliSense](https://marketplace.visualstudio.com/items?itemName=antfu.iconify)
    - [Tailwind CSS IntelliSense](https://marketplace.visualstudio.com/items?itemName=bradlc.vscode-tailwindcss) - Tailwind Css 样式联想
    - [Vetur](https://marketplace.visualstudio.com/items?itemName=octref.vetur) - vue 开发必备
    - [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) - 脚本代码检查
    - [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) - 代码格式化
    - [Stylelint](https://marketplace.visualstudio.com/items?itemName=stylelint.vscode-stylelint) - css 格式化
陈文彬 已提交
111 112 113 114

## 安装

```js
V
vben 已提交
115 116
//  使git对文件名大小写敏感
git config core.ignorecase false
陈文彬 已提交
117 118 119

// 拉取项目代码

V
vben 已提交
120
git clone https://github.com/anncwb/vue-vben-admin.git vue-vben-admin-2.0
陈文彬 已提交
121

V
vben 已提交
122
cd vue-vben-admin-2.0
陈文彬 已提交
123

B
bin 已提交
124
// 如果使用别的包管理工具,可以自行安装
V
vben 已提交
125
// 如果未安装yarn,请运行:npm install -g yarn
陈文彬 已提交
126 127 128 129
yarn install

```

V
vben 已提交
130
## 使用
陈文彬 已提交
131

V
vben 已提交
132
### 开发环境
陈文彬 已提交
133 134 135 136 137 138 139 140 141

```bash
yarn serve
```

### 打包

```bash

V
vben 已提交
142
yarn build # 打包
陈文彬 已提交
143

V
vben 已提交
144
yarn build:no-cache # 打包,执行之前会先删除缓存
陈文彬 已提交
145

N
nebv 已提交
146
yarn report # 生成构建包报表预览
陈文彬 已提交
147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164
```

### 格式化

```bash
yarn lint:stylelint # 样式格式化

yarn lint:prettier # js/ts代码格式化
```

### 其他

```bash
yarn reinstall # 删除依赖重新装,兼容window

yarn preview # 本地进行打包预览

yarn log # 生成CHANGELOG
V
vben 已提交
165 166 167 168

yarn clean:cache # 删除缓存

yarn clean:lib # 删除node_modules,兼容window系统
陈文彬 已提交
169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185
```

## Git 提交规范

- 参考 [vue](https://github.com/vuejs/vue/blob/dev/.github/COMMIT_CONVENTION.md) 规范 ([Angular](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular))

  - `feat` 增加新功能
  - `fix` 修复问题/BUG
  - `style` 代码风格相关无影响运行结果的
  - `perf` 优化/性能提升
  - `refactor` 重构
  - `revert` 撤销修改
  - `test` 测试相关
  - `docs` 文档/注释
  - `chore` 依赖更新/脚手架配置修改等
  - `workflow` 工作流改进
  - `ci` 持续集成
V
vben 已提交
186
  - `types` 类型定义文件更改
B
bin 已提交
187
  - `wip` 开发中
陈文彬 已提交
188 189 190 191 192 193 194 195 196

## 代码贡献

1. Fork 代码!
2. 创建自己的分支: `git checkout -b feat/xxxx`
3. 提交你的修改: `git commit -am 'feat(function): add xxxxx'`
4. 推送您的分支: `git push origin feat/xxxx`
5. 提交`pull request`

V
vben 已提交
197
## 已完成功能
陈文彬 已提交
198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221

- [x] 项目搭建(基于 vite)
- [x] 登录和注销
- [x] 菜单(可以搜索及拖拽以及菜单布局)
- [x] 多标签页/面包屑
- [x] 基于角色的权限管理
- [x] 基于后台的权限管理
- [x] 分离的路由和菜单设置
- [x] 可折叠侧边栏
- [x] 可拖拽侧边栏
- [x] 多标签页模式/全局控制
- [x] 菜单搜索
- [x] 页面加载 loading
- [x] 滚动条组件
- [x] 弹窗扩展(可拖拽,全屏,自适应高度)
- [x] 模拟数据
- [x] hook 封装
- [x] 表单组件
- [x] 右键菜单
- [x] 水印插件
- [x] 动画组件
- [x] 二维码插件
- [x] 国际化插件
- [x] 详情组件
222
- [x] 验证组件
陈文彬 已提交
223
- [x] 树组件
陈文彬 已提交
224
- [x] 图片预览组件
陈文彬 已提交
225
- [x] 表格组件
226
- [x] 图表库
V
vben 已提交
227
- [x] 数字动画
228
- [x] 首屏加载等待动画
229
- [x] 抽取生产环境配置文件
V
vben 已提交
230 231 232

## 正在开发的功能

陈文彬 已提交
233
- [ ] 上传组件
V
vben 已提交
234
- [ ] 富文本组件
陈文彬 已提交
235
- [ ] 数据导入导出
236
- [ ] 全局错误处理
237 238
- [ ] 主题配置
- [ ] 黑暗主题
V
vben 已提交
239
- [ ] 打包 Gzip
240
- [ ] 打包 CDN
B
bin 已提交
241
- [ ] 系统性能优化
陈文彬 已提交
242 243

更多组件/功能/建议/bug/欢迎提交 pr 或者 issue
陈文彬 已提交
244

V
vben 已提交
245 246 247 248 249 250 251 252 253 254
## 浏览器支持

本地开发推荐使用`Chrome`浏览器,在火狐浏览器进行开发相对卡顿。

支持现代浏览器, IE 暂不支持,后续考虑支持 ie11

| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt="IE / Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>IE / Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Safari |
| :-: | :-: | :-: | :-: |
| not support | last 2 versions | last 2 versions | last 2 versions |

陈文彬 已提交
255 256
## 加入我们

257
`Vue-Vben-Aadmin` 是完全开源免费的项目,在帮助开发者更方便地进行中大型管理系统开发,同时也提供 QQ 交流群(项目刚起步,人数较少,有兴趣的可以加群一起讨论),使用问题欢迎在群内提问。
陈文彬 已提交
258 259 260

- QQ 群 `569291866`

V
vben 已提交
261
 <img alt="VbenAdmin Logo" width="100" src="./.github/res/imgs/qq.jpeg">