2017-05-12 05:56:22 +00:00
|
|
|
|
# vue-element-admin #
|
2017-04-25 05:53:49 +00:00
|
|
|
|
[线上地址](http://panjiachen.github.io/vue-element-admin)
|
|
|
|
|
|
2017-05-12 05:56:22 +00:00
|
|
|
|
[English Document](https://github.com/PanJiaChen/vue-element-admin/blob/master/README-en.md)
|
|
|
|
|
|
2017-05-16 03:08:17 +00:00
|
|
|
|
[wiki](https://github.com/PanJiaChen/vue-element-admin/wiki)
|
|
|
|
|
|
2017-07-19 08:23:40 +00:00
|
|
|
|
**本项目的定位是后台集成方案,不适合当基础模板来开发,模板建议使用 [vueAdmin-template](https://github.com/PanJiaChen/vueAdmin-template) , 桌面端 [electron-vue-admin](https://github.com/PanJiaChen/electron-vue-admin)**
|
|
|
|
|
|
|
|
|
|
|
2017-07-04 07:52:12 +00:00
|
|
|
|
|
2017-07-07 03:12:49 +00:00
|
|
|
|
**注意:该项目目前使用element-ui@1.3.3版本,所以最低兼容 Vue 2.3.0**
|
2017-05-16 05:39:11 +00:00
|
|
|
|
|
2017-04-25 05:53:49 +00:00
|
|
|
|
## 前言
|
2017-07-07 03:12:49 +00:00
|
|
|
|
> 这半年来一直在用vue写管理后台,目前后台已经有百来个页面,十几种权限,但维护成本依然很低,所以准备开源分享一下后台开发的经验和成果。目前的技术栈主要的采用vue+element+axios由webpack2打包。由于是个人项目,所以数据请求都是用了mockjs模拟。注意:在此项目基础上改造开发时请移除mock文件。
|
|
|
|
|
|
2017-04-25 06:29:48 +00:00
|
|
|
|
|
2017-06-14 10:02:12 +00:00
|
|
|
|
写了一个系列的教程配套文章,如何从零构建后一个完整的后台项目:
|
2017-05-04 09:13:37 +00:00
|
|
|
|
|
2017-05-16 03:08:17 +00:00
|
|
|
|
- [wiki](https://github.com/PanJiaChen/vue-element-admin/wiki)
|
2017-05-22 05:46:11 +00:00
|
|
|
|
- [手摸手,带你用 vue 撸后台 系列一(基础篇)](https://juejin.im/post/59097cd7a22b9d0065fb61d2)
|
|
|
|
|
- [手摸手,带你用 vue 撸后台 系列二(登录权限篇)](https://juejin.im/post/591aa14f570c35006961acac)
|
2017-06-13 05:44:01 +00:00
|
|
|
|
- [手摸手,带你用 vue 撸后台 系列三 (实战篇)](https://juejin.im/post/593121aa0ce4630057f70d35)
|
2017-07-04 08:17:39 +00:00
|
|
|
|
- [手摸手,带你用vue撸后台 系列四(vueAdmin 一个极简的后台基础模板)](https://juejin.im/post/595b4d776fb9a06bbe7dba56)
|
2017-06-13 05:44:01 +00:00
|
|
|
|
- [手摸手,带你封装一个vue component](https://segmentfault.com/a/1190000009090836)
|
2017-05-16 03:08:17 +00:00
|
|
|
|
|
2017-07-07 03:12:49 +00:00
|
|
|
|
相应需求,开了一个qq群 `591724180` 方便大家交流
|
2017-06-14 10:02:12 +00:00
|
|
|
|
|
2017-07-19 08:23:40 +00:00
|
|
|
|
**如有问题请先看上述文章和Wiki,若不能满足,欢迎 issue 和 pr ~**
|
2017-06-14 10:02:12 +00:00
|
|
|
|
|
2017-07-07 03:12:49 +00:00
|
|
|
|
**该项目并不是一个脚手架,更倾向于是一个集成解决方案**
|
2017-06-14 10:02:12 +00:00
|
|
|
|
|
2017-07-07 03:12:49 +00:00
|
|
|
|
**该项目不支持低版本游览器,有需求请自行添加polyfill [详情](https://github.com/PanJiaChen/vue-element-admin/wiki#babel-polyfill)**
|
2017-06-14 10:02:12 +00:00
|
|
|
|
|
2017-04-25 05:53:49 +00:00
|
|
|
|
|
|
|
|
|
## 功能
|
|
|
|
|
- 登录/注销
|
|
|
|
|
- 权限验证
|
|
|
|
|
- 侧边栏
|
|
|
|
|
- 面包屑
|
|
|
|
|
- 富文本编辑器
|
|
|
|
|
- Markdown编辑器
|
|
|
|
|
- JSON编辑器
|
|
|
|
|
- 列表拖拽
|
|
|
|
|
- plitPane
|
|
|
|
|
- Dropzone
|
|
|
|
|
- Sticky
|
|
|
|
|
- CountTo
|
|
|
|
|
- echarts图表
|
2017-07-28 01:50:52 +00:00
|
|
|
|
- 401,404错误页面
|
2017-04-25 05:53:49 +00:00
|
|
|
|
- 错误日志
|
|
|
|
|
- 导出excel
|
|
|
|
|
- table example
|
2017-05-09 07:16:20 +00:00
|
|
|
|
- 动态table example
|
|
|
|
|
- 拖拽table example
|
2017-06-14 10:02:12 +00:00
|
|
|
|
- 内联编辑table example
|
2017-04-25 05:53:49 +00:00
|
|
|
|
- form example
|
|
|
|
|
- 多环境发布
|
|
|
|
|
- dashboard
|
|
|
|
|
- 二次登录
|
2017-05-31 07:55:56 +00:00
|
|
|
|
- 动态侧边栏(支持多级路由)
|
2017-04-25 05:53:49 +00:00
|
|
|
|
- mock数据
|
2017-06-15 06:44:26 +00:00
|
|
|
|
- cache tabs example
|
|
|
|
|
- screenfull
|
|
|
|
|
- markdown2html
|
2017-06-23 09:38:30 +00:00
|
|
|
|
- views-tab
|
2017-04-25 05:53:49 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 开发
|
2017-04-24 09:04:40 +00:00
|
|
|
|
```bash
|
2017-04-24 10:31:47 +00:00
|
|
|
|
# 克隆项目
|
2017-04-25 05:53:49 +00:00
|
|
|
|
git clone https://github.com/PanJiaChen/vue-element-admin.git
|
|
|
|
|
|
2017-04-24 10:31:47 +00:00
|
|
|
|
# 安装依赖
|
|
|
|
|
npm install
|
2017-05-14 15:36:57 +00:00
|
|
|
|
//or # 建议不要用cnpm 安装有各种诡异的bug 可以通过如下操作解决npm速度慢的问题
|
2017-04-28 09:43:50 +00:00
|
|
|
|
npm install --registry=https://registry.npm.taobao.org
|
2017-04-25 05:53:49 +00:00
|
|
|
|
|
|
|
|
|
# 本地开发 开启服务
|
2017-04-25 09:10:18 +00:00
|
|
|
|
npm run dev
|
2017-04-24 09:04:40 +00:00
|
|
|
|
```
|
2017-04-25 05:53:49 +00:00
|
|
|
|
浏览器访问 http://localhost:9527
|
|
|
|
|
|
|
|
|
|
## 发布
|
2017-04-24 10:19:35 +00:00
|
|
|
|
```bash
|
2017-04-24 10:31:47 +00:00
|
|
|
|
# 发布测试环境 带webpack ananalyzer
|
|
|
|
|
npm run build:sit-preview
|
2017-04-25 05:53:49 +00:00
|
|
|
|
|
2017-04-24 10:31:47 +00:00
|
|
|
|
# 构建生成环境
|
|
|
|
|
npm run build:prod
|
2017-04-24 10:19:35 +00:00
|
|
|
|
```
|
|
|
|
|
|
2017-04-25 05:53:49 +00:00
|
|
|
|
## 目录结构
|
|
|
|
|
```shell
|
|
|
|
|
├── build // 构建相关
|
|
|
|
|
├── config // 配置相关
|
|
|
|
|
├── src // 源代码
|
2017-05-02 05:05:00 +00:00
|
|
|
|
│ ├── api // 所有请求
|
2017-04-25 05:53:49 +00:00
|
|
|
|
│ ├── assets // 主题 字体等静态资源
|
|
|
|
|
│ ├── components // 全局公用组件
|
|
|
|
|
│ ├── directive // 全局指令
|
|
|
|
|
│ ├── filtres // 全局filter
|
|
|
|
|
│ ├── mock // mock数据
|
|
|
|
|
│ ├── router // 路由
|
|
|
|
|
│ ├── store // 全局store管理
|
|
|
|
|
│ ├── styles // 全局样式
|
|
|
|
|
│ ├── utils // 全局公用方法
|
|
|
|
|
│ ├── view // view
|
|
|
|
|
│ ├── App.vue // 入口页面
|
|
|
|
|
│ └── main.js // 入口 加载组件 初始化等
|
|
|
|
|
├── static // 第三方不打包资源
|
|
|
|
|
│ ├── jquery
|
|
|
|
|
│ └── Tinymce // 富文本
|
|
|
|
|
├── .babelrc // babel-loader 配置
|
|
|
|
|
├── eslintrc.js // eslint 配置项
|
|
|
|
|
├── .gitignore // git 忽略项
|
|
|
|
|
├── favicon.ico // favicon图标
|
|
|
|
|
├── index.html // html模板
|
|
|
|
|
└── package.json // package.json
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
2017-05-31 10:28:06 +00:00
|
|
|
|
## Changelog
|
|
|
|
|
Detailed changes for each release are documented in the [release notes](https://github.com/PanJiaChen/vue-element-admin/releases).
|
|
|
|
|
|
2017-04-25 05:53:49 +00:00
|
|
|
|
## 状态管理
|
|
|
|
|
后台只有user和app配置相关状态使用vuex存在全局,其它数据都由每个业务页面自己管理。
|
|
|
|
|
|
|
|
|
|
|
2017-04-24 10:19:35 +00:00
|
|
|
|
## 效果图
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:51:58 +00:00
|
|
|
|
#### 两步验证登录 支持微信和qq
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
![两步验证 here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/2login.gif)
|
|
|
|
|
|
2017-04-17 03:51:58 +00:00
|
|
|
|
#### 真正的动态换肤
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-24 10:37:31 +00:00
|
|
|
|
![真正的动态换肤](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/theme.gif)<br />
|
|
|
|
|
|
2017-06-28 08:00:56 +00:00
|
|
|
|
#### tabs
|
|
|
|
|
|
|
|
|
|
![tabs](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/tabs.gif)<br />
|
|
|
|
|
|
2017-04-24 10:37:31 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
|
2017-04-17 03:51:58 +00:00
|
|
|
|
#### 可收起侧边栏
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/leftmenu.gif)
|
|
|
|
|
|
2017-05-22 05:46:11 +00:00
|
|
|
|
#### table拖拽排序
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/order.gif)
|
|
|
|
|
|
2017-04-24 10:37:31 +00:00
|
|
|
|
|
2017-05-22 05:46:11 +00:00
|
|
|
|
#### 动态table
|
|
|
|
|
|
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/dynamictable.gif)
|
|
|
|
|
|
2017-04-24 10:37:31 +00:00
|
|
|
|
|
2017-04-17 03:51:58 +00:00
|
|
|
|
#### 上传裁剪头像
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/uploadAvatar.gif)
|
|
|
|
|
|
2017-04-24 10:37:31 +00:00
|
|
|
|
|
2017-04-20 12:31:40 +00:00
|
|
|
|
#### 错误统计
|
|
|
|
|
|
2017-04-24 10:37:31 +00:00
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/errorlog.gif)
|
2017-04-20 12:31:40 +00:00
|
|
|
|
|
2017-05-22 05:46:11 +00:00
|
|
|
|
|
2017-04-17 03:51:58 +00:00
|
|
|
|
#### 富文本(整合七牛 打水印等个性化功能)
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/editor.gif)
|
|
|
|
|
|
2017-04-17 03:51:58 +00:00
|
|
|
|
#### 封装table组件
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/table.gif)
|
|
|
|
|
|
|
|
|
|
#### 图表
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/echarts.gif)
|
|
|
|
|
|
2017-05-22 05:46:11 +00:00
|
|
|
|
|
2017-04-17 03:51:58 +00:00
|
|
|
|
#### 导出excel
|
2017-04-17 03:50:56 +00:00
|
|
|
|
|
2017-04-17 03:47:47 +00:00
|
|
|
|
![enter image description here](https://github.com/PanJiaChen/vue-element-admin/blob/master/gifs/excel.png)
|
|
|
|
|
|
2017-04-25 06:33:36 +00:00
|
|
|
|
|
2017-07-19 08:23:40 +00:00
|
|
|
|
## [查看更多demo](http://panjiachen.github.io/vue-element-admin)
|
|
|
|
|
|
|
|
|
|
## License
|
|
|
|
|
|
|
|
|
|
MIT
|