场景:支持权限上下文的自定义迭代组件
场景描述
在项目管理中实现一个自定义迭代组件,并且希望可以控制组件的访问权限,仅当所属项目为「Demo Project」时才显示该组件,否则隐藏该组件。
解决方案
实现思路
实现一个自定义迭代模块,使用自定义权限点能力添加一个插件权限点,将自定义迭代模块关联该自定义权限点。
实现效果
当所属项目为「Demo Project」时,能看到该自定义迭代模块
当所属项目不是「Demo Project」时,该自定义迭代模块被隐藏
插件开发
第一步:添加插槽
使用npx op add module添加ones:project:component:sprint类型的插槽。
config/plugin.yaml
modules:
- id: ones-project-component-sprint-li88
title: Sprint
moduleType: ones:project:component:sprint
entry: modules/ones-project-component-sprint-li88/index.html
实现插槽渲染逻辑
web/src/modules/ones-project-component-sprint-li88/index.tsx
ReactDOM.render(
<ConfigProvider>
<h1>Custom Sprint</h1>
</ConfigProvider>,
document.getElementById('ones-mf-root'),
)