首页   注册   登录
 ruoxie 最近的时间轴更新
ruoxie's repos on GitHub
JavaScript · 264 人关注
3YAdmin
基于react全家桶+antd构建的专注通用权限控制与表单的后台管理系统模板
Vue · 134 人关注
d2-admin-pm
基于 d2-admin的RBAC权限管理解决方案
JavaScript · 106 人关注
lazy-mock
一个快速生成后端模拟数据的懒人工具
C# · 26 人关注
NetCore-Turorial
NET CORE学习笔记,包含:Docker持续部署,中间件,依赖注入,微服务引擎surging源码解析,快速开发框架ABP源码解析
JavaScript · 7 人关注
d2-admin-server
JavaScript · 3 人关注
easy-socket-browser
websocket client for browser,easy to use,run with middleware,support reconnect
C# · 3 人关注
NetCoreJwtDemo
JavaScript · 2 人关注
easy-socket-node
websocket server for Node.js,easy to use,run with middleware
Vue · 1 人关注
lazy-mock-im
CSS · 0 人关注
AmazonTool
JavaScript · 0 人关注
BlogAgent
多平台博客同步工具---Server端
JavaScript · 0 人关注
BlogTool
多平台博客同步工具---Client
JavaScript · 0 人关注
ChromeExtensionDemo
HTML · 0 人关注
ContentEditTool
0 人关注
ddia
《Designing Data-Intensive Application》DDIA中文翻译
0 人关注
demo
个人学习、测试demo
JavaScript · 0 人关注
ejsapp
JavaScript · 0 人关注
emailjs-tcp-socket
Shim for W3C TCPSocket API
JavaScript · 0 人关注
ES6Test
HTML · 0 人关注
FrontEndGuide
Go · 0 人关注
go-patterns
设计模式 Golang实现
JavaScript · 0 人关注
HBlog
CSS · 0 人关注
Home
CSS · 0 人关注
i-notes
0 人关注
jaycewu.site
0 人关注
Micro8
JavaScript · 0 人关注
MovieAgent
JavaScript · 0 人关注
MuseUI-Test
JavaScript · 0 人关注
openrecord
Make ORMs great again!

ruoxie

V2EX 第 322280 号会员,加入于 2018-06-12 21:54:27 +08:00
ruoxie 最近回复了
自己实现一下 RBAC 就已经够用,要做到数据权限控制,那就是 ABAC 了,可以在 RBAC 的基础上做扩展
60 天前
回复了 DemonQ 创建的主题 程序员 写了一点常用的 CSS 总结,欢迎星星
61 天前
回复了 DemonQ 创建的主题 程序员 写了一点常用的 CSS 总结,欢迎星星
你的猫被我偷走了
165 天前
回复了 stebest 创建的主题 Blogger 晒博客,求 py
https://jaycewu.site/
之前写一个 demo,直接移除 dom 元素可能比 display="none"好一点
<template>
<div>
<v-btn color="primary">正常按钮</v-btn>
<!--arg:role,function modifiers:all any default:any -->
<v-btn color="success" v-permission:function.all="permission">权限按钮</v-btn>
<br>
<v-btn color="error" @click="updatePermission">更新按钮所需权限</v-btn>
</div>
</template>
<script>
const USER_PERMISSION=["FUNCTION_USER_ADD","FUNCTION_USER_DEL"];
const USER_ROLE=["ROLE_TEST1","ROLE_TEST2"];
export default {
data() {
return {
permission:['FUNCTION_USER_ADD','FUNCTION_USER_DEL'],
flag:true
};
},
methods:{
updatePermission(){
this.permission=this.flag?["USER_TEST3"]:['FUNCTION_USER_ADD','FUNCTION_USER_DEL'];
this.flag=!this.flag;
}
},
directives: {
permission: {
// 指令的定义
bind: function(el,binding) {
let checkCodes=[];
if(binding.arg==="function"){
checkCodes=USER_PERMISSION;
}else if(binding.arg==="role"){
checkCodes=USER_ROLE;
}else{
checkCodes=USER_PERMISSION.join(USER_ROLE);
}
let access=true;
if(binding.modifiers.all){
for(let need of binding.value){
if(!checkCodes.some(s=>s===need)){
access=false;
break;
}
}
}else{
access=false;
for(let need of binding.value){
if(checkCodes.some(s=>s===need)){
access=true;
break;
}
}
}
if(!access){
el.style.display="none";
}
console.log("bind:"+JSON.stringify(binding),access);
},
update:function(el,binding){
let checkCodes=[];
if(binding.arg==="function"){
checkCodes=USER_PERMISSION;
}else if(binding.arg==="role"){
checkCodes=USER_ROLE;
}else{
checkCodes=USER_PERMISSION.join(USER_ROLE);
}
let access=true;
if(binding.modifiers.all){
for(let need of binding.value){
if(!checkCodes.some(s=>s===need)){
access=false;
break;
}
}
}else{
access=false;
for(let need of binding.value){
if(checkCodes.some(s=>s===need)){
access=true;
break;
}
}
}
if(!access){
el.style.display="none";
}else{
el.style.display="inline-flex";
}
console.log("update:"+JSON.stringify(binding),access);
}
}
}
};
</script>
165 天前
回复了 Jaeger 创建的主题 程序员 你们的开源项目的官网都是用什么搭建的?
一个快速生成后端模拟数据的工具
Github:https://github.com/wjkang/lazy-mock
特点:
轻松对接 mock.js ,faker.js 等假数据生成工具
不需要数据库,直接持久化数据到 JSON 文件
相比 json-server 单 JSON 文件,支持一个实体一个 JSON 文件
默认包含了 jwt 实现的登录与登出,基于 RBAC 模型的权限控制
使用 async/await 处理异步问题
MVC 代码分层结构
内置简单代码生成器
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   843 人在线   最高记录 4385   ·  
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 16ms · UTC 21:01 · PVG 05:01 · LAX 14:01 · JFK 17:01
♥ Do have faith in what you're doing.
沪ICP备16043287号-1