足力健前端,vue版本

README-zh.md 6.1KB

vue-admin-template

这是一个 极简的 vue admin 管理后台 它只包含了 Element UI & axios & iconfont & permission control & lint,这些搭建后台必要的东西。

线上地址

国内访问

Extra

如果你想要根据用户角色来动态生成侧边栏和 router,你可以使用该分支permission-control

本项目基于webpack4开发,若还想使用webpack3开发,请使用该分支webpack3

如果你想使用基于 vue + typescript 的管理后台, 可以看看这个项目: vue-typescript-admin-template (鸣谢: @Armour)

相关项目

vue-element-admin

electron-vue-admin

vue-typescript-admin-template

写了一个系列的教程配套文章,如何从零构建后一个完整的后台项目:

Build Setup

# Clone project
git clone https://github.com/PanJiaChen/vue-admin-template.git

# Install dependencies
npm install

# 建议不要用cnpm  安装有各种诡异的bug 可以通过如下操作解决npm速度慢的问题
npm install --registry=https://registry.npm.taobao.org

# Serve with hot reload at localhost:9528
npm run dev

# Build for production with minification
npm run build

# Build for production and view the bundle analyzer report
npm run build --report

Demo

demo

Element-Ui 使用 cdn 教程

首先找到 index.html (根目录下)

引入 Element 的 css 和 js ,并且引入 vue 。因为 Element-Ui 是依赖 vue 的,所以必须在它之前引入 vue 。

之后找到 webpack.base.conf.js 加入 externals 让 webpack 不打包 vue 和 element

externals: {
  vue: 'Vue',
  'element-ui':'ELEMENT'
}

之后还有一个小细节是如果你用了全局对象方式引入 vue,就不需要 手动 Vue.use(Vuex) ,它会自动挂载,具体见 issue

最终你可以使用 npm run build --report 查看效果 如图: demo

具体代码

对应分支

Browsers support

Modern browsers and Internet Explorer 10+.

IE / Edge
IE / Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
IE10, IE11, Edge last 2 versions last 2 versions last 2 versions

License

MIT license.

Copyright (c) 2017-present PanJiaChen

本项目使用的是 vue-admin-template@3.8.0

开发人员须知

  • 要保持config下dev.env.js和static/config/serverconfig.json中配置信息一致;代码中读取的 serverConfig.json 的配置信息;
  • 打包后会将config/prod.env.js中的信息导入dist/static/config/serverconfig.json中;

vue-layer修改记录

  • 2734 行左右
  contentStyle: function () {
  //return {
  //  height: parseInt(this.options.area[1]) - 50 + "px",
  //  minHeight: "inherit",
  //  overflow: "auto"
  //}
  //解决 area 设置% 无效的bug
  var h = parseInt(this.options.area[1]) - 50 + 'px';
  if(this.options.area[1].indexOf('%') > -1){
    h = 'calc(100% - 37px)'
  }
  return {
    height: h,
    minHeight: "inherit",
    overflow: "auto"
  }
  • 2778 行左右
  resetZIndex: function() {
    //修改t的值 500 =》 1500 t+1 => t+2 增加了给遮罩层添加 z-index
    var doms = document.querySelectorAll(".vl-notify-mask")
    for (var t = 1500, e = document.querySelectorAll(".vl-notify-iframe"), n = 0, o = 0, r = e.length; o < r; o++) {
      var i = parseInt(this.getStyle(e[o].id, "z-index"));
      this.options.id == e[o].id && (n = i), t < i && (t = i)
      var ms = document.getElementById(doms[o].id)
    }
    n == t && 1500 != t || (this.zindex = t + 2)
    ms.style.zIndex = this.zindex - 1
  },

  • 2310 行左右 解决 ReferenceError: deepClone is not defined deepClone 修改成 this.deepClone

vuedraggable问题

  • 使用2.16.0会报错;目前使用的2.15.0