ArraySetter

简介

用来展示属性类型为数组的setter

展示

ArraySetter - 图1

配置示例

  1. "setter": {
  2. "componentName": "ArraySetter",
  3. "props": {
  4. "itemSetter": {
  5. "componentName": "ObjectSetter",
  6. "props": {
  7. "config": {
  8. "items": [{
  9. "name": "title",
  10. "description": "标题",
  11. "setter": "StringSetter",
  12. },
  13. {
  14. "name": "callback",
  15. "description": "callback",
  16. "setter": {
  17. "componentName": "FunctionSetter"
  18. }
  19. }
  20. ]
  21. }
  22. },
  23. "initialValue": {
  24. "title": "I am title",
  25. "callback": null,
  26. }
  27. }
  28. }
  29. }

ArraySetter 配置

属性名

类型

说明

itemSetter

ObjectSetter

ArraySetter的子节点内容必须用ObjectSetter包裹

itemSetter 配置

属性名

类型

说明

componentName

String

props

initialValue

Object

新增一项的初始值

ObjectSetter 配置

属性名

类型

说明

descriptor

String

Item在列表中展示的item.key名,需要和 config.items[] 中key对应 默认为 “项目X”

ArraySetter - 图2

config

Object

配置项

config.items

Array

子属性列表数据

config.items[].name

String

子属性名称

config.items[].description

String

子属性描述

config.items[].setter

Object | String

子属性setter配置 | 子属性setter组件名

config.items[].isRequired

Boolean

子属性是否开启快捷编辑,最多开启4个

ArraySetter - 图3

config.items[].condition

Boolean | () => Boolean

是否展示

config.items[].getValue

(target, value) => value

数据获取的 hook,可修改获取数据

config.items[].setValue

(target, value) => value

数据获取的 hook,可修改设置数据