diff --git a/src/components/common/Sidebar.vue b/src/components/common/Sidebar.vue
index a2c94b4..33df6cb 100644
--- a/src/components/common/Sidebar.vue
+++ b/src/components/common/Sidebar.vue
@@ -31,12 +31,12 @@
{
icon: 'el-icon-setting',
index: 'readme',
- title: '自述'
+ title: '自述文件'
},
{
icon: 'el-icon-menu',
index: '2',
- title: '表格',
+ title: '常用表格',
subs: [
{
index: 'basetable',
@@ -44,14 +44,14 @@
},
{
index: 'vuetable',
- title: 'Vue表格组件'
+ title: 'datasource表格'
}
]
},
{
icon: 'el-icon-date',
index: '3',
- title: '表单',
+ title: '表单相关',
subs: [
{
index: 'baseform',
@@ -74,17 +74,17 @@
{
icon: 'el-icon-star-on',
index: 'basecharts',
- title: '图表'
+ title: 'schart图表'
},
+ // {
+ // icon: 'el-icon-edit',
+ // index: 'drag',
+ // title: '拖拽列表'
+ // },
{
- icon: 'el-icon-edit',
- index: 'drag',
- title: '拖拽'
- },
- {
- icon: 'el-icon-edit',
+ icon: 'el-icon-warning',
index: 'permission',
- title: '权限'
+ title: '权限测试'
}
]
}
@@ -110,4 +110,7 @@
.sidebar > ul {
height:100%;
}
+ .sidebar i{
+ margin-top: -4px;
+ }
diff --git a/src/components/page/BaseCharts.vue b/src/components/page/BaseCharts.vue
index 88d3ebb..43bc138 100644
--- a/src/components/page/BaseCharts.vue
+++ b/src/components/page/BaseCharts.vue
@@ -6,25 +6,27 @@
基础图表
-
-
拖动排序
-
{{list.title}}
+
+
+
拖动排序
+
{{list.title}}
+
@@ -46,8 +48,7 @@
},
methods: {
dragstartEvent(ev) {
- const self = this;
- self.dragElement = ev.target;
+ this.dragElement = ev.target;
ev.target.style.backgroundColor = '#f8f8f8';
},
dragendEvent(ev) {
@@ -55,19 +56,17 @@
ev.preventDefault();
},
dragenterEvent(ev) {
- const self = this;
- if(self.dragElement != ev.target){
- ev.target.parentNode.insertBefore(self.dragElement, ev.target);
+ if(this.dragElement != ev.target){
+ ev.target.parentNode.insertBefore(this.dragElement, ev.target);
}
},
dragleaveEvent(ev) {
- const self = this;
- if(self.dragElement != ev.target){
- if(self.lock && (ev.target == ev.target.parentNode.lastElementChild || ev.target == ev.target.parentNode.lastChild)){
- ev.target.parentNode.appendChild(self.dragElement);
- self.lock = false;
+ if(this.dragElement != ev.target){
+ if(this.lock && (ev.target == ev.target.parentNode.lastElementChild || ev.target == ev.target.parentNode.lastChild)){
+ ev.target.parentNode.appendChild(this.dragElement);
+ this.lock = false;
}else{
- self.lock = true;
+ this.lock = true;
}
}
},
diff --git a/src/components/page/Login.vue b/src/components/page/Login.vue
index 2df529d..cf46232 100644
--- a/src/components/page/Login.vue
+++ b/src/components/page/Login.vue
@@ -38,11 +38,10 @@
},
methods: {
submitForm(formName) {
- const self = this;
- self.$refs[formName].validate((valid) => {
+ this.$refs[formName].validate((valid) => {
if (valid) {
- localStorage.setItem('ms_username',self.ruleForm.username);
- self.$router.push('/readme');
+ localStorage.setItem('ms_username',this.ruleForm.username);
+ this.$router.push('/readme');
} else {
console.log('error submit!!');
return false;
diff --git a/src/components/page/Markdown.vue b/src/components/page/Markdown.vue
index 9ff24b2..9ed06b4 100644
--- a/src/components/page/Markdown.vue
+++ b/src/components/page/Markdown.vue
@@ -1,42 +1,44 @@
-
-
-
-
- 表单
- markdown
-
-
-
-
-
-
既然用了markdown语法了,那么就有一个很实际的问题了。要怎么在前台展示数据呢?
-
-
这个时候就需要解析markdown语法了。可以使用 vue-markdown:一个基于vue.js的markdown语法解析插件。(这里不作展开,有需要自行了解)
-
-
-
-
-
\ No newline at end of file
diff --git a/src/components/page/OldCharts.vue b/src/components/page/OldCharts.vue
deleted file mode 100644
index 693ccdd..0000000
--- a/src/components/page/OldCharts.vue
+++ /dev/null
@@ -1,216 +0,0 @@
-
-
-
-
- 图表
- 基础图表
-
-
-
-
基础图表
-
-
-
-
-
-
-
-
-
-
-
-
-
混合图表
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/components/page/Permission.vue b/src/components/page/Permission.vue
index 85d168f..0a20b7f 100644
--- a/src/components/page/Permission.vue
+++ b/src/components/page/Permission.vue
@@ -2,39 +2,13 @@
- 自述
+ 权限测试
-
-
README.md
-
- manage-system
- 基于Vue.js 2.x系列 + Element UI 的后台管理系统解决方案
- 前言
- 之前在公司用了Vue + Element组件库做了个后台管理系统,基本很多组件可以直接引用组件库的,但是也有一些需求无法满足。像图片裁剪上传、富文本编辑器、图表等这些在后台管理系统中很常见的功能,就需要引用其他的组件才能完成。从寻找组件,到使用组件的过程中,遇到了很多问题,也积累了宝贵的经验。所以我就把开发这个后台管理系统的经验,总结成这个后台管理系统解决方案。
- 该方案作为一套多功能的后台框架模板,适用于绝大部分的后台管理系统(Web Management System)开发。基于vue.js,使用vue-cli脚手架快速生成项目目录,引用Element UI组件库,方便开发快速简洁好看的组件。分离颜色样式,支持手动切换主题色,而且很方便使用自定义主题色。
- 功能
- Element UI
-
- 登录/注销
-
- 表格
-
- 表单
-
- 图表
-
- 富文本编辑器
-
- markdown编辑器
-
- 图片拖拽/裁剪上传
-
- 支持切换主题色
-
- 列表拖拽排序
-
-
+
+
管理员权限页面
+
只有用 admin 账号登录的才拥有管理员权限,才能进到这个页面,其他账号想进来都会跳到登录页面,重新用管理员账号登录才有权限。
+
想尝试一下,请退出登录,随便输入个账号名,再进来试试看。
@@ -49,48 +23,16 @@
\ No newline at end of file
diff --git a/src/components/page/Readme.vue b/src/components/page/Readme.vue
index 526e075..1b9d632 100644
--- a/src/components/page/Readme.vue
+++ b/src/components/page/Readme.vue
@@ -1,96 +1,88 @@
-
-
-
-
- 自述
-
-
-
-
README.md
-
- manage-system
- 基于Vue.js 2.x系列 + Element UI 的后台管理系统解决方案
- 前言
- 之前在公司用了Vue + Element组件库做了个后台管理系统,基本很多组件可以直接引用组件库的,但是也有一些需求无法满足。像图片裁剪上传、富文本编辑器、图表等这些在后台管理系统中很常见的功能,就需要引用其他的组件才能完成。从寻找组件,到使用组件的过程中,遇到了很多问题,也积累了宝贵的经验。所以我就把开发这个后台管理系统的经验,总结成这个后台管理系统解决方案。
- 该方案作为一套多功能的后台框架模板,适用于绝大部分的后台管理系统(Web Management System)开发。基于vue.js,使用vue-cli脚手架快速生成项目目录,引用Element UI组件库,方便开发快速简洁好看的组件。分离颜色样式,支持手动切换主题色,而且很方便使用自定义主题色。
- 功能
- Element UI
-
- 登录/注销
-
- 表格
-
- 表单
-
- 图表
-
- 富文本编辑器
-
- markdown编辑器
-
- 图片拖拽/裁剪上传
-
- 支持切换主题色
-
- 列表拖拽排序
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/components/page/Upload.vue b/src/components/page/Upload.vue
index 6891de1..af46778 100644
--- a/src/components/page/Upload.vue
+++ b/src/components/page/Upload.vue
@@ -6,33 +6,36 @@
图片上传
-
支持拖拽
-
- Element UI自带上传组件。
- 访问地址:
Element UI Upload
+
+
支持拖拽
+
+
+
+ 将文件拖到此处,或点击上传
+ 只能上传jpg/png文件,且不超过500kb
+
+
支持裁剪
+
+
![]()
+
-
-
- 将文件拖到此处,或点击上传
- 只能上传jpg/png文件,且不超过500kb
-
-
支持裁剪
-
-
![]()
-
diff --git a/src/components/page/VueEditor.vue b/src/components/page/VueEditor.vue
index a7bc340..ebeb50a 100644
--- a/src/components/page/VueEditor.vue
+++ b/src/components/page/VueEditor.vue
@@ -1,52 +1,54 @@
-
-
-
-
- 表单
- 编辑器
-
-
-
-
-
提交
-
-
-
-
-
\ No newline at end of file
diff --git a/src/components/page/VueTable.vue b/src/components/page/VueTable.vue
index 1c562a0..dd4f4d1 100644
--- a/src/components/page/VueTable.vue
+++ b/src/components/page/VueTable.vue
@@ -3,17 +3,20 @@
表格
- Vue表格组件
+ VueDatasource
-
@@ -21,8 +24,7 @@
import axios from 'axios';
import Datasource from 'vue-datasource';
export default {
- data: function(){
- const self = this;
+ data(){
return {
url: './static/datasource.json',
information: {
@@ -51,8 +53,8 @@
{
text: 'Click',
class: 'btn-primary',
- event(e, row) {
- self.$message('选中的行数: ' + row.row.id);
+ event: (e, row)=>{
+ row && this.$message('选中的行数: ' + row.row.id);
}
}
],
@@ -73,15 +75,15 @@
},
computed:{
getData(){
- const self = this;
- return self.information.data.filter(function (d) {
- if(d.name.indexOf(self.query) > -1){
+ return this.information.data.filter((d) =>{
+ if(d.name.indexOf(this.query) > -1){
return d;
}
})
}
},
beforeMount(){
+ // 开发环境使用 easy-mock 数据,正式环境使用 json 文件
if(process.env.NODE_ENV === 'development'){
this.url = '/ms/table/source';
};
diff --git a/static/css/main.css b/static/css/main.css
index 5b739a8..33d1404 100644
--- a/static/css/main.css
+++ b/static/css/main.css
@@ -5,11 +5,11 @@ html,body,#app,.wrapper{
overflow: hidden;
}
body{
- font-family:"Helvetica Neue",Helvetica, "microsoft yahei", arial, STHeiTi, sans-serif;
+ font-family:'PingFang SC', "Helvetica Neue",Helvetica, "microsoft yahei", arial, STHeiTi, sans-serif;
}
a{text-decoration: none}
.content{
- background: none repeat scroll 0 0 #fff;
+ background: none repeat scroll 0 0 #f0f0f0;
position: absolute;
left: 250px;
right: 0;
@@ -20,6 +20,12 @@ a{text-decoration: none}
box-sizing: border-box;
overflow-y: scroll;
}
+.container{
+ padding: 30px;
+ background: #fff;
+ border: 1px solid #ddd;
+ border-radius: 5px;
+}
.crumbs{
margin-bottom: 20px;
}