1.0.6 • Published 4 years ago

lite-acl v1.0.6

Weekly downloads
3
License
ISC
Repository
github
Last release
4 years ago

lite-acl

最近做公司项目需要对接口做权限控制,但是 npm 的组件都太大了,所以自己写了个超轻量级的 ACL

import LiteAcl,{Can} from 'lite-acl';

const ac = LiteAcl.getAC();

ac.add('role1', ['a', 1, 'b']);
ac.add('role2', 'dd.ee');
ac.add({'role3':[1,2,3], 'role4':[4,5]})

ac.view('role1');
ac.view(); // 查看所有角色权限

ac.can('role1', 'a'); // true
ac.can('role1', ['a',1]); // true
ac.can('role1', ['a', 'c']); // false
ac.can('role1', ['a', 'c'], {canType:'one'}); // true
ac.can(['role1', 'role2'], ['a','dd.ee']); // true

class AController{
  @Can(['dd.ee'],'role2')
  run1(){
  }

  @Can(['dd.ee']) // 如果省略角色,则角色默认取ctx.liteAclRole属性值
  run2(){
  }
}
1.0.2

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.0.1

4 years ago