Skip to content

PropertyUI 组件参考

8.1 PropertyUICommonProps — 通用 UI 属性

所有 UI 组件都支持以下通用属性:

typescript
interface PropertyUICommonProps {
  /** 是否禁用。 */
  disabled?: boolean

  /** 帮助提示文本,显示在字段下方。 */
  hint?: I18nText

  /** 输入占位符文本。 */
  placeholder?: I18nText

  /** 是否只读。 */
  readonly?: boolean

  /** 是否为敏感数据(值会被掩码显示)。 */
  sensitive?: boolean

  /** 是否支持表达式输入。 */
  support_expression?: boolean

  /** 字段宽度。 */
  width?: "small" | "medium" | "full"

  /** 缩进级别(像素)。偶数,范围 2-80。 */
  indentation?: number

  /** 隐藏但保留在 DOM 中(CSS display:none)。 */
  display_none?: boolean
}

字段详解

属性类型说明
disabledboolean灰色不可交互
hintI18nText字段下方的说明文字
placeholderI18nText输入框内的提示文字
readonlyboolean可见但不可编辑
sensitiveboolean值显示为 ••••••
support_expressionboolean允许输入动态表达式
widthstring"small" 约 1/3 宽, "medium" 约 1/2 宽, "full" 整行
indentationnumber视觉缩进,用于表示层级关系
display_nonebooleanCSS 隐藏,但数据不会被清除

8.2 String 类型可用 UI 组件

component说明典型场景特定选项
"input"单行文本输入 ⭐默认普通文本参数-
"textarea"多行文本输入长文本、代码段-
"select"下拉单选需要 enum 的参数searchable, clearable
"radio-group"单选按钮组选项少且需要直观展示searchable, clearable
"code-editor"代码编辑器JSON、JavaScript、Python、Markdownlanguage, rows, line_numbers, line_wrapping
"emoji-picker"表情符号选择器图标、符号选择-
"color-picker"颜色选择器RGB、HEX 颜色值-

8.3 Number 类型可用 UI 组件

component说明典型场景特定选项
"number-input"数字输入框 ⭐默认普通数字输入step, suffix
"slider"范围滑动条可视化数值选择、范围限制step

8.4 Boolean 类型可用 UI 组件

component说明典型场景
"switch"开关 ⭐默认启用/禁用

8.5 Object 类型可用 UI 组件

component说明渲染效果特定选项
(不设置)平铺渲染 ⭐默认子字段直接排列,无外框-
"collapsible-panel"可折叠面板带标题的可折叠容器default_collapsed, collapsible, panel_title, sortable
"section"分区面板顶部显示对象名称下划线,子属性向下渲染并缩进-
"code-editor"代码编辑器整个对象当做 JSON/代码编辑language, rows, line_numbers, line_wrapping
"json-schema-editor"JSON Schema 编辑器Schema 可视化编辑-
"conditions-editor"条件编辑器条件规则编辑-

8.6 Array 类型可用 UI 组件

component说明适用场景特定选项
"array-section" 或不设置数组面板 ⭐默认通用数组编辑;自动区分简单/复合模式-
"multi-select"多选下拉数组元素为枚举字符串-
"tag-input"标签输入自由输入文本列表-
"slider"范围滑动条数值范围 [min, max]step
"key-value-editor"键值对编辑器数组元素为 { key, value } 对象-

8.7 CredentialId 类型可用 UI 组件

component说明
"credential-select" ⭐仅选项凭证选择器下拉框(包含已有凭证列表和新建按钮)

8.8 ResourceLocator UI

resource_locator 不使用 component 键,始终渲染为双部分控件:

  • 左侧:模式选择器下拉框,列出各模式的 display_name
  • 右侧:随当前模式自适应变化的输入控件。
模式右侧控件
list只读标签输入框。点击后打开带无限滚动分页的可搜索下拉框。
url可编辑文本输入框(URL 字符串)。
id可编辑文本输入框(原始 ID)。

PropertyUICommonProps 中的 hintplaceholdersupport_expressionwidth 等通用字段均受支持。

8.9 ResourceMapper UI

resource_mapper 不使用 component 键,始终渲染为顶部带映射模式选择器的区块。

模式渲染效果
manual每个字段对应一行带类型的输入项(由 resource_mapping 回调返回),每行有删除按钮。添加字段下拉框可恢复已删除的可选字段。
auto支持表达式输入的 JSON 代码编辑器(support_expression 始终开启)。

手动模式下字段类型与输入组件的对应关系:

字段类型输入组件
string文本输入框
number / integer数字输入框
boolean开关
object / arrayJSON 代码编辑器