工具栏控件已全部支持配置占位。不区分页面还是外框以及应用类型,可在设计态页面添加占位,并配置占位里面的按钮属性

流程配置页面过滤页面schema的时候,只需要过滤控件type为'UdcToolBar'的控件,再取settings.addOperates里面操作数据过滤type="placeholder"的

类型即可得到占位。需要注意type="group"的时候,还需要继续遍历分组里面的children,分组内部也是可以添加占位的。可以简单处理,只需要往下找一级

children即可,工具栏只会有一个分组,不会分组里面再套分组。流程接入只需要使用我注释说明的几个属性即可,如果需要额外的属性再和我说

扩展调用方调用extend之后主需要按照以下的格式返回按钮配置数据即可。必填属性必须有,非必填属性如果传了就用传进来的按钮样式属性覆盖掉页面工具栏占位上配置的按钮样式属性

// BPM & EDOC Extends code import { SlotsExtends } from '@seeyon/udc-runtime-core'; const SlotsExtendsInstance = new SlotsExtends();

interface ButtonItem { id: string; // 按钮id,需要生成一个唯一标识返回 type: 'item'; // 固定为item name: string; // 按钮名称 isSlot: true, // 固定值,标识是从插槽配置进来的数据 icon?: string; // 按钮图标 buttonType?: 'primary' | 'default' | 'dashed' | 'link' | 'text'; // 按钮样式类型 danger?: boolean; // 是否危险按钮 ghost?: boolean; // 是否幽灵按钮 showContent?: 'text' | 'icon' | 'all'; // 显示内容,text(仅文字)、icon(仅图标)、all(文字和图标) // ...others 有需要扩展的其他属性也可以再传回来给我使用,例如事件之类的 } // value值将被插槽部分引用 SlotsExtendsInstance.extend({ cmpType: 'Button', key: '', // ${工具栏控件id}${占位id} desc: '', value: () => { return ButtonItem[]; }, });

编撰人:chenpyyf

快速跳转