umi-plugin-uzai-auth
v2.0.8
Published
悠哉权限插件
Downloads
483
Readme
umi-plugin-uzai-auth
umi-plugin-uzai-auth (umi 权限插件)
安装
# or yarn
$ npm install umi-plugin-uzai-auth
流程图
使用
Configure in .umirc.js
,
export default {
auth: {
namesData: {}, //路由名称对象
upload: true, //是否开启上传
url: '/xxx/xx', //上传地址http
appKey: '', //应用名称
password: 'xxxx', //密码
exclude: ['/', '/login'], //不需要验证权限的地址默认值:["/","/login","/home"]
},
};
路由配置
{
path: '/page/home',
name: 'page',//用于匹配namesData对象
auth: 'page:auth',//路由权限
component: '../page/index',
pKey: 'appTest',//应用名称
componentAuth: [
'component:auth',
],//组件权限
apiAuth:[{
path:"/api",
auth:"api:auth"
}]//api权限
}//同一权限类型不能存在重复权限
组件说明
AuthComponent
参数 children:子组件
参数 authKey:权限 key(不传则不验证)
参数 pKey:应用 key(不传则不验证)
参数 style:样式
PKeyAuthComponent
参数 children:子组件
参数 pKey:应用 key(不传则不验证)
AuthSettingComponent (开启设置模式)
参数 children:子组件
参数 onChange:监听页面权限设置改变(auth:string)=>void
参数 contextAuthData:当前需要验证的权限
hooks 说明
useCheckPkeyAndAuth({authObj,authKey:string,pKey:string});//批量验证权限+应用 key
参数 authObj:验证数据源(Record<string, any> []);
参数 authKey:权限 key 字段名(默认 authKey);
参数 pKey:应用 key 字段名(默认 pKey);
返回值:authObj
useCheckAuth({settingAuth,authKey,pKey});//单个验证权限+应用 key
参数 settingAuth:设置模式独有,慎用(Record<string, any>[]);
参数 authKey:权限 key 参数 pKey:应用 key
返回值:bool
useCheckAuthObj({authObj,authKey:string})//批量验证权限
参数 authObj:验证数据源(Record<string, any>[]);
参数 authKey:权限 key 字段名(默认 authKey);
返回值:authObj
usePkeyCheck(pKey:string|string[]);//批量验证应用 key
返回值:为 string 时返回 bool,数组时返回 string[];
useCheckPageAuth();//验证当前页面权限
返回值:403//没有权限
Api 说明
checkAuth(params:ParamsModal|string);//验证权限
返回值:bool
ParamsModal:{pathname,authKey,pKey} //pathname 内部自动创建慎用
checkPkey(pKey:string|string[]);//批量验证应用 key
返回值:为 string 时返回 bool,数组时返回 string[];
getApiAuth(url:string)//获取 api 权限
返回值:string
AppAuthData 说明
项目 authData 数据源
pathAuthData(所有路由权限树)
pKeyList(所有应用 key)
pKeyAuthData(所有应用 key 权限树分类)
rootPathData(当前应用权限树) apiAuthData(当前 api 权限)
LICENSE
MIT