跳到主要内容

权限

提示

通过本章节,了解如何集成权限控制,实现页面、组件、按钮级别权限控制。

页面权限

不需要在低代码平台处理,是由 主应用 控制,即路由权限,动态渲染即可。

组件、按钮级别

1. 鉴权方法

配置权限策略 配置鉴权方法,统一处理组件、按钮级别的权限。

key:按钮/组件配置的权限代码
该鉴权方法,返回布尔值【true:有权限 | false:无权限】

配置入口

  • 推荐主应用通过 window 变量 提供鉴权方法,一般路由权限和按钮权限都是通过接口获取的,所以在主应用中实现鉴权方法,更方便。

    // 主应用提供鉴权方法
    window.MYBRICKS_HOST = {
    checkPermission(key: string) {
    // ... 鉴权具体逻辑 ...
    return true // 或者 false
    }
    }

    // 低码内配置权限策略
    export default function ({ key }) {
    // key: 按钮/组件配置的权限代码
    // 该鉴权方法,返回布尔值【true:有权限 | false:无权限】

    return return window.MYBRICKS_HOST?.checkPermission?.(key)
    }
  • 低码内处理鉴权逻辑,可以使用 fetch 请求接口获取权限列表,然后判断是否有该权限。

    export default function ({ key }) {
    // 1. 通过接口,获取当前页面用户的权限列表
    const list = fetch('权限接口')
    // 2. 鉴权具体逻辑,根据自身业务做具体判断
    return list?.includes(key)
    }

2. 鉴权 key 配置

配置入口有两种

  • 组件:点击组件 -> 悬浮工具条 -> 编辑权限
    组件
  • 组件内子组件:点击子组件区域 -> 右侧编辑视图 -> 高级 -> 权限信息配置 组件内子组件

在编辑权限弹窗中,选择 注册为功能项 即可配置权限。

配置说明
权限代码权限 key,作为 key 参数传入 鉴权方法
无权限时无权限时的处理逻辑,可选值:
- 提示链接:显示无权限链接
- 隐藏:隐藏组件/按钮
显示名称无权限时,无权限链接显示的文案
链接地址无权限时,无权限链接跳转的链接地址
备注权限的备注信息,不会在页面中显示

组件 组件内子组件 demo


demo 链接:http://work.manateeai.com/mybricks-app-pcspa/index.html?id=773756209037381