← 返回主文档
步骤 6

注册物料面板到 Material.ts

让新组件出现在设计器左侧物料面板的对应分组中

📋 功能描述

Material.tsgetMaterialPanelConfig() 函数返回值中,将 WidgetType 添加到对应分组的 widgetTypeList 数组中。完成后,用户就能在页面设计器的左侧物料面板中看到并拖拽该组件。

🧩 模块描述

Material.ts 定义了物料面板的分组结构,包含以下分组:

分组名称枚举值典型组件
通用字段GeneralField输入框、文本域、数字、日期、选择器等
业务字段BusinessField人员、组织、数据引用、单据引用等
单据体DocumentBodyBillBody、BillBodyChild、BillBodyTree 等
通用组件CommonCommonTxt、CommonBtn、CommonImg、CommonLink、Icon 等
容器组件ContainerRow、FlexLayout、GroupPanel、PartitionContainer
导航组件NavigationTabs、Toolbar、Anchor
审批组件ApproveProcessApproveBtnGroup、ApproveRecord、ApproveFlowChart
列表组件ListVxeListVxeColumn、ListVxeAction、ListVxeGroup 等

📁 文件信息

文件路径

packages/form-designer/src/config/Material.ts

操作类型

修改 - 在对应分组 widgetTypeList 中添加

修改位置

getMaterialPanelConfig() 返回值中的对应分组

所属层级

页面设计器层 (packages/form-designer)

💻 修改示例

根据组件类型,在对应分组的 widgetTypeList 中添加:

// packages/form-designer/src/config/Material.ts export function getMaterialPanelConfig() { return [ // 通用字段分组 { name: MaterialCollapseTypeEnum.GeneralField, widgetTypeList: [...] }, // 业务字段分组 { name: MaterialCollapseTypeEnum.BusinessField, widgetTypeList: [...] }, // 通用组件分组 ← 如果你的组件是 CommonBtn 类型 { name: MaterialCollapseTypeEnum.Common, widgetTypeList: [ WidgetType.CommonTxt, WidgetType.CommonBtn, WidgetType.CommonImg, WidgetType.CommonLink, WidgetType.Icon, // ← 添加新组件 WidgetType.MyNewComponent, ], }, // 容器组件分组 ← 如果你的组件是 GroupPanel 类型 { name: MaterialCollapseTypeEnum.Container, widgetTypeList: [ WidgetType.Row, WidgetType.FlexLayout, WidgetType.GroupPanel, // ← 添加新容器组件 WidgetType.MyContainerComponent, ], }, ] }

⚠️ 分组选择指南

➡️ 下一步

完成物料面板注册后,执行最后一步: