vue-quasar-admin 一个包含通用权限控制的后台管理系统-程序员宅基地

技术标签: ViewUI  前端  后端  javascript  

vue-quasar-admin

  Quasar-Framework 是一款基于vue.js开发的开源的前端框架, 它能帮助web开发者快速创建以下网站:响应式网站,渐进式应用,手机应用(通过Cordova),跨平台应用(通过Electron)。   Quasar允许开发者在只写一次代码的情况下发布到多个平台 website, PWA ,Mobile App 和 Electron App 在使用Quasar的时候, 你甚至不需要Hammerjs, Momentjs, 或者Bootstrap, Quasar框架内包含了已经这些东西,你可以很简单就使用到。   vue-quasar-admin是基于Quasar-Framework搭建的一套包含通用权限控制的后台管理系统(目前只针对PC端)。

github

online demo

登录账号:

admin 123

test 123456

website_admin 123456

请不要随意修改账号名称,其他操作随意,可通过右上角"数据初始化"按钮初始化数据

功能与特点

  • 真实后端数据支持
  • 登录/登出
  • 灵活的九宫格布局
  • 收缩左侧菜单栏
  • tag标签导航
  • 面包屑
  • 全屏/退出全屏
  • 动态菜单
  • 菜单按模块划分
  • 通用权限控制
    • 菜单级权限控制
    • 接口级权限控制
    • 元素级权限控制
  • 全局可配置loading效果
  • 网络异常处理
  • 模块
    • 系统模块
      • 系统设置
        • 菜单管理
      • 权限管理
        • 功能管理
        • 角色管理
        • 角色权限管理
        • 角色用户管理
        • 用户角色管理
      • 组织架构
        • 部门管理
        • 职位管理
      • 用户管理
    • 网站模块
      • CMS
        • 文章管理
    • 开发模块
      • 官方组件
        • 。。。
      • 业务组件
        • sku
    • 审计日志
    • 数据初始化

文件结构

.
├── .quasar  Quasar CLI生成的配置
└── src
    ├── assets  资源文件
    ├── components 自定义组件
    ├── css 样式文件
    ├── layout 布局组件
    ├── libs  工具方法
    ├── router  路由配置
    ├── store  状态管理
    ├── service  API管理
    ├── plugins  需要全局注册的组件、指令、插件
    └── pages
        ├── cms 
        │   └── 文章管理
        ├── develop
        │   ├── 官方组件
        │   └── 业务组件
        ├── organization
        │   ├── 部门管理
        │   └── 职位管理
        ├── other
        │   └── 审计日志
        ├── permission
        │   ├── 功能管理
        │   ├── 角色管理
        │   ├── 角色权限管理 
        │   ├── 角色用户管理
        │   └── 用户角色管理
        ├── system  
        │   ├── 菜单管理
        ├── user  
        │   └── 用户管理
        ├── 403 无权限页面
        ├── index 首页
        └── login 登录页
        

安装使用

Install

npm install

Run

Development

quasar dev

Production(Build)

quasar build

安装后台程序

后台程序

git clone https://github.com/wjkang/quasar-admin-server.git

Install

npm install

Run

Development

npm run start

Production(Build)

npm run production

后端程序使用koa2构建,并且使用lowdb持久化数据到JSON文件(使用JSON文件存储是为了快速构建demo)。

功能开发步骤(以文章管理为例)

  • 前端
    • 定义功能码:
    • post_view -文章列表查看
    • post_edit -文章编辑
    • post_del -文章删除
    • 新建文章列表页 post.vue
    • 新增路由
    • 使用菜单管理功能新增"文章管理"的相关菜单,菜单名称必须与上一步新增的路由的name字段一致。权限码填定义好的"文章列表查看"功能对应的权限码(菜单级权限控制)
    • 使用功能管理在新建的菜单下录入定义好的功能名称及功能码
    • 配置角色与用户
    • 在角色权限管理为相应的角色设置功能权限
  • 后端
    • db.json文件新增文章存储结构
    • services下新增postService.js,编写对db.json文件的操作
    • controllers下新增post.js,引入postService.js做相关操作
    • main-routes.js 增加相关路由,使用PermissionCheck中间件进行后端接口级的权限控制(可使用功能码或角色码)
  • 前端
    • service下新增post.js,配置API相关操作,配置loading字段实现自定义loading效果,permission字段可配置功能编码与角色编码(实现前端接口级权限控制)
    • 回到post.vue文件,引入API访问文件,编写业务代码
    • 使用v-permission指令控制页面元素的是否显示,可使用功能编码与角色编码(实现元素级权限控制)
    • store app模块下配置dontCache,控制页面是否缓存

可多细节可查看源码

效果展示

image

image

image

image

image

image

image

image

image

image

image

image

image

转载于:https://my.oschina.net/ruoxie/blog/1838414

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chengxiao3880/article/details/100838363

智能推荐

idea报错Error:(44, 22) java: 常量字符串过长_error:(44, 20) java: 常量字符串过长-程序员宅基地

文章浏览阅读5.3k次。@[TOC](idea报错Error:(44, 22) java: 常量字符串过长)idea报错Error:(44, 22) java: 常量字符串过长找到idea——>Settings——>Build——>Compiler——>java Compiler将javac改成Eclipse..._error:(44, 20) java: 常量字符串过长

【CV with Pytorch】第 1 章 : 计算机视觉的基石_最大池化感受野机损-程序员宅基地

文章浏览阅读748次,点赞6次,收藏6次。计算机视觉处理依赖于图像和视频的特定问题集。它试图破译图像/视频中的信息,以便做出有意义的决定。就像人类解析一幅图像或一系列按顺序放置的图像并对其做出决策一样,CV 帮助机器解释和理解视觉数据。这包括对象检测、图像分类、图像恢复、场景到文本生成、超分辨率、视频分析和图像跟踪。这些问题中的每一个都以其自身的方式很重要。在并行计算的力量发挥作用后,研究与视觉相关的问题获得了很大的吸引力。深度学习建模需要高计算量和正确定义的优化框架。有一些现有框架在研究和开发人员社区中非常受欢迎。_最大池化感受野机损

录制电脑屏幕的软件哪个性价比高?这4款软件就很实用_外部屏幕录制工具都有什么-程序员宅基地

文章浏览阅读663次。在使用电脑的过程中,我们需要对它进行屏幕录制。录制电脑屏幕需要用到录屏软件,那录制电脑屏幕的软件哪个好用?小编认为接下来介绍的这4款就很不错,快来看看吧!_外部屏幕录制工具都有什么

【opencv】(5) 图像边缘检测:sobel、scharr、laplacian、canny_分别sobe边缘检测算子、laplace边缘检测算子、canny边缘检测算子对下列图像进行边-程序员宅基地

文章浏览阅读2.4k次,点赞6次,收藏22次。各位同学好,今天和大家分享一下图像边缘检测的几个算子,主要内容有:(1)sobel算子:cv2.Sobel();(2)scharr算子:cv2.Scharr();(3)laplacian算子:cv2.Laplacian();(4)canny算子:cv2.Canny()在开始前,我们先导入需要的库文件和图片,再定义一个图像显示函数,方便绘图。import numpy as npimport cv2# 获取图片所在文件夹filepath = 'C:\\Users\\admin\\.spyde_分别sobe边缘检测算子、laplace边缘检测算子、canny边缘检测算子对下列图像进行边

python保存图片到指定路径_如何使用Python PIL(枕头)将图像保存在特定的文件目录中,而不会由于以下原因而发生KeyError:save_handler = SAVE [format.up...-程序员宅基地

文章浏览阅读1.3k次。I am trying to crop specific elements out of a larger image of the periodic table, then saving them in a specific file directory, this file directory is inside an additional folder, and this folder is..._python中numpy后保存图片到自定义路径

计算机基础一(计算机的数制)_数制数据在计算机内怎么表示与处理-程序员宅基地

文章浏览阅读3.2k次,点赞2次,收藏10次。数制:人们在日常生活实践中,创造了多种表示数的方法,这些数的表示规则就被称为数制。数制的分类十进制基数为10,即逢十进一。由 0、1、2、3、4、5、6、7、8、9 十个数字组成。二进制基数为2,即逢二进一。由 0、1 两个数字组成。以0b开头。二进制是计算机中使用的数制,即所有的数据信息在计算机内部都是以二进制的形式来表示和处理的。计算机中使用二进制是因为二进制具有:可行性、简易性、逻辑性、可靠性的特点。二进制的弊端在于数字冗长、不便阅读。因此在计算机文献中常以八进制和十六进制表示。_数制数据在计算机内怎么表示与处理

随便推点

crypto-js 加密解密_cryptojs.aes.encrypt(srcs, keys, { mode: cryptojs.-程序员宅基地

文章浏览阅读479次。npm 包管理详解pm install module_name -S 即npm install module_name --save 写入dependencies npm install module_name -D即npm install module_name --save-dev 写入devDependencies npm install mo..._cryptojs.aes.encrypt(srcs, keys, { mode: cryptojs.mode.ecb, padding: cryptoj

Serv-U换端口配置成功_serv-u6.0设置新端口号-程序员宅基地

文章浏览阅读5k次。列服务器为10.0.0.6在Serv-U本地服务器的设置->高级可以设置PASV端口范围我这里设置的是2000-2000然后在域的那儿设置“FTP端口号为3000"然后firewall 打开这些端口利用filezillia设置连接,只能连接成功但无法列出目录但得用服务器内网的其他机器,列如10.0.0.3可以连接到10.0.0.6用ftp也可以用FTP overssl(显式加密)也可以外网为什么就_serv-u6.0设置新端口号

各种实用配置,代理,修改源-程序员宅基地

文章浏览阅读511次,点赞7次,收藏8次。二、python包下载设置代理指定下载源清华源:豆瓣源:设置超时离线安装

java.lang.ClassNotFoundException:org.apache.commons.beanutils.BeanUtils_java.lang.noclassdeffounderror: org/apache/commons-程序员宅基地

文章浏览阅读834次。java.lang.ClassNotFoundException:org.apache.commons.beanutils.BeanUtilsjava.lang.NoClassDefFoundError:org/apache/commons/beanutils/BeanUtils这两个异常虽然不一样,但原因都是jar包的问题解决办法在src和web下的lib包中都要导入jar包..._java.lang.noclassdeffounderror: org/apache/commons/beanutils/beanutils

国产安全芯片,请关注他们!_acl16 pack-程序员宅基地

文章浏览阅读2.4k次。北京中电华大电子设计有限责任公司 (简称“华大电子”)成立于2002年6月,是国家认定的高新技术企业,是国内最早的集成电路设计企业之一,是中国安全芯片产业的核心企业。华大电子致力于物联网、车联网、智能交通、智能家居、智能制造、5G网络通讯、金融科技等领域的安全芯片产品及应用方案开发。华大电子秉承“积极主动 追求成功”的理念,面向蓬勃发展的中国新一代信息技术产业,提供“芯”产品和“芯”方案,与产业界融合发展,共同成就美好“芯”未来。1.2.1 智能卡芯片。_acl16 pack

X11 qt5.6.2 程序运行一段时间后卡死/不刷新/(死机)(_XReply)_libx11 qt卡死-程序员宅基地

文章浏览阅读3.8k次,点赞11次,收藏25次。X11 qt5.6.2 程序运行一段时间后卡死/不刷新/(死机)硬件:飞凌 imx6dl 开发板软件:linux 4.1.15 X11 qt5.6.2问题的现象:QT应用程序运行一段时间后会卡死(界面不刷新), 此时, top命令可以看到程序进程还在,cpu占用率为0 (图中Impella进程), 复现时间间隔不固定,可能量到三小时,或者一到两天。问题debug了 很久,基于对开发板厂商的信息, 一开始 怀疑QT 程序内有死锁,或陷入睡眠,死循环等。测试发现死锁或者睡眠,的现象与问题_libx11 qt卡死

推荐文章

热门文章

相关标签