README.md 7.3 KB
Newer Older
花裤衩 已提交
1 2 3 4 5
<p align="center">
  <img width="320" src="https://wpimg.wallstcn.com/98d033e6-8da0-49b5-afe6-f491f4cd3348.png">
</p>

# vue-element-admin 
花裤衩 已提交
6 7

[![vue](https://img.shields.io/badge/vue-2.4.2-brightgreen.svg)](https://github.com/vuejs/vue)
P
Pan 已提交
8
[![element-ui](https://img.shields.io/badge/element--ui-1.4.2-brightgreen.svg)](https://github.com/ElemeFE/element)
花裤衩 已提交
9 10 11 12
[![license](https://img.shields.io/github/license/mashape/apistatus.svg)](https://github.com/PanJiaChen/vue-element-admin/blob/master/LICENSE)
[![GitHub release](https://img.shields.io/github/release/PanJiaChen/vue-element-admin.svg)]()


P
refine  
Pan 已提交
13 14
[线上地址](http://panjiachen.github.io/vue-element-admin)

P
Pan 已提交
15 16
[English Document](https://github.com/PanJiaChen/vue-element-admin/blob/master/README-en.md)

P
refine  
Pan 已提交
17 18
[wiki](https://github.com/PanJiaChen/vue-element-admin/wiki)

P
Pan 已提交
19
[donate](https://github.com/PanJiaChen/vue-element-admin#donate)
花裤衩 已提交
20

P
Pan 已提交
21 22 23
**本项目的定位是后台集成方案,不适合当基础模板来开发。**
 - 模板建议使用: [vueAdmin-template](https://github.com/PanJiaChen/vueAdmin-template)  
 - 桌面端: [electron-vue-admin](https://github.com/PanJiaChen/electron-vue-admin)
花裤衩 已提交
24

花裤衩 已提交
25

P
Pan 已提交
26 27

**注意:该项目目前使用element-ui@1.4.2版本,所以最低兼容 Vue 2.3.0**
P
Pan 已提交
28

P
refine  
Pan 已提交
29
## 前言
T
ttop5 已提交
30 31
> 这半年来一直在用vue写管理后台,目前后台已经有百来个页面,十几种权限,但维护成本依然很低,所以准备开源分享一下后台开发的经验和成果。目前的技术栈主要的采用vue+element+axios由webpack2打包。由于是个人项目,所以数据请求都是用了mockjs模拟。注意:在此项目基础上改造开发时请移除mock文件。

P
Pan 已提交
32

P
Pan 已提交
33
写了一个系列的教程配套文章,如何从零构建后一个完整的后台项目:
P
Pan 已提交
34

P
refine  
Pan 已提交
35
 - [wiki](https://github.com/PanJiaChen/vue-element-admin/wiki)
P
Pan 已提交
36 37
 - [手摸手,带你用 vue 撸后台 系列一(基础篇)](https://juejin.im/post/59097cd7a22b9d0065fb61d2)
 - [手摸手,带你用 vue 撸后台 系列二(登录权限篇)](https://juejin.im/post/591aa14f570c35006961acac)
P
Pan 已提交
38
 - [手摸手,带你用 vue 撸后台 系列三 (实战篇)](https://juejin.im/post/593121aa0ce4630057f70d35)
花裤衩 已提交
39
 - [手摸手,带你用vue撸后台 系列四(vueAdmin 一个极简的后台基础模板)](https://juejin.im/post/595b4d776fb9a06bbe7dba56)
P
Pan 已提交
40
 - [手摸手,带你封装一个vue component](https://segmentfault.com/a/1190000009090836)
P
refine  
Pan 已提交
41

T
ttop5 已提交
42
 相应需求,开了一个qq群 `591724180` 方便大家交流
P
Pan 已提交
43

花裤衩 已提交
44
 或者可以加入该 **[圈子](https://jianshiapp.com/circles/1209)** 讨论问题
P
Pan 已提交
45

P
Pan 已提交
46
 **如有问题请先看上述文章和Wiki,若不能满足,欢迎 issue 和 pr**
P
Pan 已提交
47

T
ttop5 已提交
48
 **该项目并不是一个脚手架,更倾向于是一个集成解决方案**
P
Pan 已提交
49

P
Pan 已提交
50
 **该项目不支持低版本游览器(如ie),有需求请自行添加polyfill [详情](https://github.com/PanJiaChen/vue-element-admin/wiki#babel-polyfill)**
P
Pan 已提交
51

P
refine  
Pan 已提交
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66

## 功能
- 登录/注销
- 权限验证
- 侧边栏
- 面包屑
- 富文本编辑器
- Markdown编辑器
- JSON编辑器
- 列表拖拽
- plitPane
- Dropzone
- Sticky
- CountTo
- echarts图表
P
Pan 已提交
67
- 401,404错误页面
P
refine  
Pan 已提交
68 69
- 错误日志
- 导出excel
P
Pan 已提交
70
- zip
P
Pan 已提交
71
- 前端可视化excel
P
refine  
Pan 已提交
72
- table example
P
Pan 已提交
73 74
- 动态table example
- 拖拽table example
P
Pan 已提交
75
- 内联编辑table example
P
refine  
Pan 已提交
76 77 78 79
- form example
- 多环境发布
- dashboard
- 二次登录
P
Pan 已提交
80
- 动态侧边栏(支持多级路由)
P
refine  
Pan 已提交
81
- mock数据
P
Pan 已提交
82 83 84
- cache tabs example
- screenfull
- markdown2html
P
Pan 已提交
85
- views-tab
P
Pan 已提交
86
- clipboard
P
refine  
Pan 已提交
87 88 89


## 开发
P
refine  
Pan 已提交
90
```bash
P
Pan 已提交
91
    # 克隆项目
P
refine  
Pan 已提交
92 93
    git clone https://github.com/PanJiaChen/vue-element-admin.git

P
Pan 已提交
94 95
    # 安装依赖
    npm install
P
Pan 已提交
96
    //or # 建议不要用cnpm  安装有各种诡异的bug 可以通过如下操作解决npm速度慢的问题
P
Pan 已提交
97
    npm install --registry=https://registry.npm.taobao.org
P
refine  
Pan 已提交
98 99

    # 本地开发 开启服务
P
Pan 已提交
100
    npm run dev
P
refine  
Pan 已提交
101
```
P
refine  
Pan 已提交
102 103 104
浏览器访问 http://localhost:9527

## 发布
P
Pan 已提交
105
```bash
P
Pan 已提交
106 107
    # 发布测试环境 带webpack ananalyzer
    npm run build:sit-preview
P
refine  
Pan 已提交
108

P
Pan 已提交
109 110
    # 构建生成环境
    npm run build:prod
P
Pan 已提交
111 112
```

P
refine  
Pan 已提交
113 114 115 116 117
## 目录结构
```shell
├── build                      // 构建相关  
├── config                     // 配置相关
├── src                        // 源代码
P
refine  
Pan 已提交
118
│   ├── api                    // 所有请求
P
refine  
Pan 已提交
119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
│   ├── assets                 // 主题 字体等静态资源
│   ├── components             // 全局公用组件
│   ├── directive              // 全局指令
│   ├── filtres                // 全局filter
│   ├── mock                   // mock数据
│   ├── router                 // 路由
│   ├── store                  // 全局store管理
│   ├── styles                 // 全局样式
│   ├── utils                  // 全局公用方法
│   ├── view                   // view
│   ├── App.vue                // 入口页面
│   └── main.js                // 入口 加载组件 初始化等
├── static                     // 第三方不打包资源
│   └── Tinymce                // 富文本
├── .babelrc                   // babel-loader 配置
├── eslintrc.js                // eslint 配置项
├── .gitignore                 // git 忽略项
├── favicon.ico                // favicon图标
├── index.html                 // html模板
└── package.json               // package.json

```

P
Pan 已提交
142 143 144
## Changelog
Detailed changes for each release are documented in the [release notes](https://github.com/PanJiaChen/vue-element-admin/releases).

花裤衩 已提交
145
## Donate
P
Pan 已提交
146 147
If you find this project useful, you can buy me a cup of coffee
![donate](https://panjiachen.github.io/donate/donation.png)
花裤衩 已提交
148

P
refine  
Pan 已提交
149 150 151 152
## 状态管理
后台只有user和app配置相关状态使用vuex存在全局,其它数据都由每个业务页面自己管理。


P
Pan 已提交
153
## 效果图
P
update  
Pan 已提交
154

P
update  
Pan 已提交
155
#### 两步验证登录 支持微信和qq
P
update  
Pan 已提交
156

P
Pan 已提交
157 158
![两步验证 here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/2login.gif)

P
update  
Pan 已提交
159
#### 真正的动态换肤
P
update  
Pan 已提交
160

P
Pan 已提交
161 162
![真正的动态换肤](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/theme.gif)<br />

P
Pan 已提交
163 164 165 166
#### tabs

![tabs](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/tabs.gif)<br />

P
Pan 已提交
167

P
Pan 已提交
168

P
update  
Pan 已提交
169
#### 可收起侧边栏
P
update  
Pan 已提交
170

P
Pan 已提交
171 172
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/leftmenu.gif)

P
Pan 已提交
173
#### table拖拽排序
P
update  
Pan 已提交
174

P
Pan 已提交
175 176
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/order.gif)

P
Pan 已提交
177

P
Pan 已提交
178 179 180 181
#### 动态table

![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/dynamictable.gif)

P
Pan 已提交
182

P
update  
Pan 已提交
183
#### 上传裁剪头像
P
update  
Pan 已提交
184

P
Pan 已提交
185 186
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/uploadAvatar.gif)

P
Pan 已提交
187

P
Pan 已提交
188 189
#### 错误统计

P
Pan 已提交
190
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/errorlog.gif)
P
Pan 已提交
191

P
Pan 已提交
192

P
update  
Pan 已提交
193
#### 富文本(整合七牛 打水印等个性化功能)
P
update  
Pan 已提交
194

P
Pan 已提交
195 196
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/editor.gif)

P
update  
Pan 已提交
197
#### 封装table组件
P
update  
Pan 已提交
198

P
Pan 已提交
199 200 201
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/table.gif)

#### 图表
P
update  
Pan 已提交
202

P
Pan 已提交
203 204
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/echarts.gif)

P
Pan 已提交
205

P
update  
Pan 已提交
206
#### 导出excel
P
update  
Pan 已提交
207

P
Pan 已提交
208 209
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/excel.png)

P
Pan 已提交
210

花裤衩 已提交
211 212 213 214 215
## [查看更多demo](http://panjiachen.github.io/vue-element-admin)

## License

MIT