js React Dva对页面中权限节点的控制 即有权限展示和无权限的不展示

本文介绍了如何在React应用中使用Dva进行权限节点控制,确保只有具备特定权限的用户才能看到相应界面或操作按钮。步骤包括在permission.js中定义全系统权限码,登录后获取并存储用户权限,通过auth.js判断权限匹配,并在组件中调用isAuth函数动态显示或隐藏按钮。例如,isAuth函数返回true时显示新增按钮,否则隐藏。
摘要由CSDN通过智能技术生成

思路:有些界面和操作按钮有着对应唯一的权限码,当用户登录之后会获取到用户向前所拥有的权限码。然后跟整个系统的权限码进行比对,如果存在对应的权限码则拥有该权限。

步骤:

1,在permission.js中存放整个系统的权限码

2.登录成功后获取到当前用户拥有的权限列表,并使用localStorage本地存储起来

window.localStorage.setItem('auth', JSON.stringify(auth));

3.在auth.js中编写当前权限码与系统权限码是否匹配

const isAuth = authId => {

if (authId === undefined || authId === null) {

return true;

}

let ids = [];

// 可能是个数组

if (authId.length) {

ids = ids.concat(authId);

} else {

ids.push(authId);

}

// 获取当前用户所拥有的权限列表

let authIds = JSON.parse(window.localStorage.getItem("auth")) || [];

// 循环判断是否匹配<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zeng__Y1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值