d3george / slash-admin

A modern react admin. It is based on react 18, vite and TypeScript. It's fast !
https://admin.slashspaces.com/
MIT License
1.49k stars 218 forks source link

Enhance button permission,实现了按钮权限,#18 #35

Closed sincerely1 closed 4 months ago

sincerely1 commented 5 months ago

这里主要是实现了按钮权限,如果有权限则正常显示,没有权限有两种处理方式,如果传入ReactDOM就隐藏按钮,传入函数则增加参数authorized,用户可以依据该参数禁用组件。 具体修改:

  1. 修改了emtity.ts,在Role和UserInfo中添加buttonPermissions类型为string[],表示按钮权限
  2. 修改assets.js,增加相关测试数据,并个返回的用户信息添加上buttonPermissions数据
  3. 在userStore中,新增导出useUserButtonPermission
  4. 添加在components文件夹内添加authPermission文件夹,并添加authWrapper组件,用于权限验证
  5. 添加按钮权限页面,位于"pages/components/button/index.tss",修改对应的路由文件,locales文件,实现该页面 具体结果如下: msedge_vCGfg16pDR
vercel[bot] commented 5 months ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
slash-admin ✅ Ready (Inspect) Visit Preview 💬 Add feedback Mar 25, 2024 5:00am
lucyanddarlin commented 5 months ago

cool,不过感觉命名还可以继续优化一下,比如 CHANGE 可以修改为 EDIT ,还有像按扭权限也可以设置几个常量或者枚举来管理