neo-cmp-cli 1.12.7 → 1.12.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/template/antd-custom-cmp-template/package.json +1 -1
- package/template/develop//345/261/236/346/200/247/351/205/215/347/275/256/351/241/271/347/261/273/345/236/213/346/261/207/346/200/273.md +558 -0
- package/template/echarts-custom-cmp-template/package.json +1 -1
- package/template/empty-custom-cmp-template/package.json +1 -1
- package/template/neo-bi-cmps/package.json +1 -1
- package/template/neo-bi-cmps/src/components/targetNumber__c/model.ts +3 -3
- package/template/neo-custom-cmp-template/package.json +1 -1
- package/template/neo-h5-cmps/neo.config.js +34 -76
- package/template/neo-h5-cmps/package.json +7 -3
- package/template/neo-h5-cmps/src/components/entityList__c/index.tsx +0 -4
- package/template/neo-h5-cmps/src/components/entityList__c/model.ts +10 -5
- package/template/neo-h5-cmps/src/components/entityTabs__c/index.tsx +29 -17
- package/template/neo-h5-cmps/src/components/entityTabs__c/model.ts +25 -5
- package/template/neo-h5-cmps/src/components/entityTabs__c/style.scss +11 -22
- package/template/neo-h5-cmps/src/components/openChatPageBtn__c/index.tsx +3 -1
- package/template/neo-h5-cmps/src/utils/xobjects.ts +8 -3
- package/template/neo-h5-cmps/tsconfig.json +1 -1
- package/template/neo-order-cmps/package.json +1 -1
- package/template/react-custom-cmp-template/package.json +1 -1
- package/template/react-ts-custom-cmp-template/package.json +1 -1
- package/template/vue2-custom-cmp-template/package.json +1 -1
- package/template/neo-h5-cmps/src/components/simpleTable__c/README.md +0 -90
- package/template/neo-h5-cmps/src/components/simpleTable__c/index.tsx +0 -277
- package/template/neo-h5-cmps/src/components/simpleTable__c/model.ts +0 -91
- package/template/neo-h5-cmps/src/components/simpleTable__c/style.scss +0 -116
package/package.json
CHANGED
|
@@ -0,0 +1,558 @@
|
|
|
1
|
+
# 属性配置项类型汇总
|
|
2
|
+
本文档汇总了可作为组件属性配置项的所有表单组件类型,包括 amis 提供的配置项、NeoCRM 平台数据源配置项以及 NeoCRM 自定义表单配置项。
|
|
3
|
+
|
|
4
|
+
## 目录
|
|
5
|
+
|
|
6
|
+
- [一、amis 表单组件配置项](#一amis-表单组件配置项)
|
|
7
|
+
- [1. 基础输入类](#1-基础输入类)
|
|
8
|
+
- [2. 选择类](#2-选择类)
|
|
9
|
+
- [3. 特殊输入类](#3-特殊输入类)
|
|
10
|
+
- [4. 文件上传类(暂不可用)](#4-文件上传类暂不可用)
|
|
11
|
+
- [5. 富文本编辑类](#5-富文本编辑类)
|
|
12
|
+
- [6. 布局容器类](#6-布局容器类)
|
|
13
|
+
- [7. 复合组件类](#7-复合组件类)
|
|
14
|
+
- [8. 特殊功能类](#8-特殊功能类)
|
|
15
|
+
- [二、NeoCRM 平台数据源配置项](#二neocrm-平台数据源配置项)
|
|
16
|
+
- [xObjectEntityList - 实体列表数据源](#xobjectentitylist---实体列表数据源)
|
|
17
|
+
- [xObjectDataApi - 实体业务数据列表数据源](#xobjectdataapi---实体业务数据列表数据源)
|
|
18
|
+
- [xObjectDetailApi - 实体详情数据源](#xobjectdetailapi---实体详情数据源)
|
|
19
|
+
- [selectFieldsApi - 字段 apiKey 多选(穿梭框)](#selectfieldsapi---字段-apikey-多选穿梭框)
|
|
20
|
+
- [selectFieldDescApi - 字段描述选择(下拉单选/多选)](#selectfielddescapi---字段描述选择下拉单选多选)
|
|
21
|
+
- [三、NeoCRM 自定义表单配置项](#三neocrm-自定义表单配置项)
|
|
22
|
+
- [panelSwitch - 属性面板开关](#panelswitch---属性面板开关)
|
|
23
|
+
- [panelNumber - 属性面板数字输入](#panelnumber---属性面板数字输入)
|
|
24
|
+
- [使用说明](#使用说明)
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## 一、amis 表单组件配置项
|
|
29
|
+
备注:移动端 amis 表单配置项的样式异常(被平台表单项组件样式覆盖)。
|
|
30
|
+
|
|
31
|
+
### 1. 基础输入类
|
|
32
|
+
|
|
33
|
+
#### 文本输入
|
|
34
|
+
- **text** - 文本输入框
|
|
35
|
+
- **password** - 密码输入框
|
|
36
|
+
- **email** - 邮箱输入框
|
|
37
|
+
- **url** - URL输入框
|
|
38
|
+
- **native-date** - 原生日期输入
|
|
39
|
+
- **native-time** - 原生时间输入
|
|
40
|
+
- **native-number** - 原生数字输入
|
|
41
|
+
|
|
42
|
+
#### 多行文本
|
|
43
|
+
- **textarea** - 多行文本输入框
|
|
44
|
+
|
|
45
|
+
#### 数字输入
|
|
46
|
+
- **number** - 数字输入框
|
|
47
|
+
|
|
48
|
+
#### 日期时间
|
|
49
|
+
- **date** - 日期选择器
|
|
50
|
+
- **datetime** - 日期时间选择器
|
|
51
|
+
- **time** - 时间选择器
|
|
52
|
+
- **month** - 月份选择器
|
|
53
|
+
- **quarter** - 季度选择器
|
|
54
|
+
- **year** - 年份选择器
|
|
55
|
+
- **date-range** - 日期范围选择器
|
|
56
|
+
- **datetime-range** - 日期时间范围选择器
|
|
57
|
+
- **month-range** - 月份范围选择器
|
|
58
|
+
|
|
59
|
+
### 2. 选择类
|
|
60
|
+
|
|
61
|
+
#### 单选/多选
|
|
62
|
+
- **select** - 下拉选择框
|
|
63
|
+
- **multi-select** - 多选下拉框
|
|
64
|
+
- **radios** - 单选框组
|
|
65
|
+
- **checkboxes** - 复选框组
|
|
66
|
+
- **checkbox** - 单个复选框
|
|
67
|
+
|
|
68
|
+
#### 树形选择
|
|
69
|
+
- **tree-select** - 树形选择器
|
|
70
|
+
- **nested-select** - 嵌套选择器
|
|
71
|
+
|
|
72
|
+
#### 级联选择
|
|
73
|
+
- **chained-select** - 级联选择器
|
|
74
|
+
|
|
75
|
+
#### 穿梭框
|
|
76
|
+
- **transfer** - 穿梭框组件
|
|
77
|
+
- **tabs-transfer** - 标签页穿梭框
|
|
78
|
+
|
|
79
|
+
#### 其他选择
|
|
80
|
+
- **picker** - 选择器
|
|
81
|
+
|
|
82
|
+
### 3. 特殊输入类
|
|
83
|
+
|
|
84
|
+
#### 开关
|
|
85
|
+
- **switch** - 开关组件
|
|
86
|
+
|
|
87
|
+
#### 滑块
|
|
88
|
+
- **range** - 范围滑块
|
|
89
|
+
|
|
90
|
+
#### 评分
|
|
91
|
+
- **rating** - 评分组件(待完善)
|
|
92
|
+
|
|
93
|
+
#### 颜色
|
|
94
|
+
- **color** - 颜色选择器
|
|
95
|
+
|
|
96
|
+
#### 图标
|
|
97
|
+
- **icon-picker** - 图标选择器
|
|
98
|
+
|
|
99
|
+
#### 城市
|
|
100
|
+
- **city** - 城市选择器
|
|
101
|
+
|
|
102
|
+
#### 位置
|
|
103
|
+
- **location** - 位置选择器
|
|
104
|
+
|
|
105
|
+
### 4. 文件上传类(暂不可用)
|
|
106
|
+
|
|
107
|
+
#### 文件上传
|
|
108
|
+
- **file** - 文件上传组件
|
|
109
|
+
|
|
110
|
+
#### 图片上传
|
|
111
|
+
- **image** - 图片上传组件
|
|
112
|
+
|
|
113
|
+
### 5. 富文本编辑类
|
|
114
|
+
|
|
115
|
+
#### 编辑器
|
|
116
|
+
- **js-editor** - JavaScript 编辑器
|
|
117
|
+
- **ts-editor** - TypeScript 编辑器
|
|
118
|
+
- **rich-text** - 富文本编辑器
|
|
119
|
+
- **editor** - 通用编辑器
|
|
120
|
+
- **diff-editor** - 差异编辑器
|
|
121
|
+
|
|
122
|
+
### 6. 布局容器类
|
|
123
|
+
|
|
124
|
+
#### 容器
|
|
125
|
+
- **container** - 容器组件
|
|
126
|
+
- **hbox** - 水平盒子布局
|
|
127
|
+
- **grid** - 网格布局
|
|
128
|
+
|
|
129
|
+
#### 分组
|
|
130
|
+
- **field-set** - 字段集
|
|
131
|
+
- **group** - 分组组件
|
|
132
|
+
|
|
133
|
+
#### 标签页
|
|
134
|
+
- **tabs** - 标签页组件
|
|
135
|
+
|
|
136
|
+
### 7. 复合组件类
|
|
137
|
+
|
|
138
|
+
#### 组合
|
|
139
|
+
- **combo** - 组合组件
|
|
140
|
+
- **array** - 数组组件
|
|
141
|
+
- **repeat** - 重复组件
|
|
142
|
+
|
|
143
|
+
#### 子表单
|
|
144
|
+
- **form** - 子表单
|
|
145
|
+
|
|
146
|
+
#### 表格
|
|
147
|
+
- **table** - 表格组件
|
|
148
|
+
|
|
149
|
+
#### 矩阵
|
|
150
|
+
- **matrix** - 矩阵组件
|
|
151
|
+
|
|
152
|
+
### 8. 特殊功能类
|
|
153
|
+
|
|
154
|
+
#### 隐藏字段
|
|
155
|
+
- **hidden** - 隐藏字段
|
|
156
|
+
|
|
157
|
+
#### 静态显示
|
|
158
|
+
- **static** - 静态文本显示
|
|
159
|
+
|
|
160
|
+
#### 按钮
|
|
161
|
+
- **button** - 按钮组件
|
|
162
|
+
- **submit** - 提交按钮
|
|
163
|
+
- **reset** - 重置按钮
|
|
164
|
+
- **button-toolbar** - 按钮工具栏
|
|
165
|
+
|
|
166
|
+
#### 输入组合
|
|
167
|
+
- **input-group** - 输入组合组件
|
|
168
|
+
|
|
169
|
+
#### 服务
|
|
170
|
+
- **service** - 服务组件
|
|
171
|
+
|
|
172
|
+
#### 公式
|
|
173
|
+
- **formula** - 公式组件
|
|
174
|
+
|
|
175
|
+
#### 条件构建器
|
|
176
|
+
- **condition-builder** - 条件构建器
|
|
177
|
+
|
|
178
|
+
#### UUID
|
|
179
|
+
- **uuid** - UUID 生成器
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## 二、NeoCRM 平台数据源配置项
|
|
184
|
+
|
|
185
|
+
### xObjectEntityList - 实体列表数据源
|
|
186
|
+
|
|
187
|
+
这是一个简化的对象实体列表选择配置项,采用直接下拉列表配置方式,专门用于选择对象实体。
|
|
188
|
+
|
|
189
|
+
**功能特性:**
|
|
190
|
+
1. **实体列表展示**:以下拉列表形式展示当前可选择的实体对象
|
|
191
|
+
2. **搜索功能**:支持实体名称搜索
|
|
192
|
+
3. **数据存储**:选择的实体ID存储到 value 中
|
|
193
|
+
4. **实体类型控制**:通过 custom 属性控制使用标准实体还是自定义实体
|
|
194
|
+
|
|
195
|
+
**使用方法:**
|
|
196
|
+
|
|
197
|
+
在属性配置面板(propsSchema)中使用:
|
|
198
|
+
|
|
199
|
+
```json
|
|
200
|
+
{
|
|
201
|
+
"type": "xObjectEntityList",
|
|
202
|
+
"name": "xObjectApiKey",
|
|
203
|
+
"label": "对象实体列表",
|
|
204
|
+
"custom": false
|
|
205
|
+
}
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
**组件属性:**
|
|
209
|
+
|
|
210
|
+
- `name`: 字段名称
|
|
211
|
+
- `label`: 标签文本
|
|
212
|
+
- `disabled`: 是否禁用
|
|
213
|
+
- `custom`: 是否使用自定义实体,设置为 false 则表示展示标准实体列表,不传则展示标准实体和自定义实体
|
|
214
|
+
- `value`: 当前已选择的实体对象ID(xObjectApiKey)
|
|
215
|
+
- `onChange`: 值变化回调
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
### xObjectDataApi - 实体业务数据列表数据源
|
|
220
|
+
|
|
221
|
+
这是一个用于获取实体业务数据列表的属性配置项。
|
|
222
|
+
|
|
223
|
+
**功能特性:**
|
|
224
|
+
1. **输入框展示**:以输入框形式展示当前配置的实体和选择的字段信息
|
|
225
|
+
2. **设置按钮**:右侧设置图标,点击打开配置弹窗
|
|
226
|
+
3. **实体类型选择**:弹窗中支持选择标准实体或自定义实体
|
|
227
|
+
4. **实体选择**:弹窗中支持下拉选择实体
|
|
228
|
+
5. **字段选择**:使用 antd Transfer 组件选择字段,默认选中所有实体字段
|
|
229
|
+
6. **分页配置**:配置页码(默认展示第几页)和每页条数(每页展示多少条数据)
|
|
230
|
+
7. **数据存储**:选择的实体ID存储到 `xObjectApiKey`,选中的字段列表存储到 `fields`,字段信息列表存储到 `fieldDescList`,页码存储到 `page`,每页条数存储到 `pageSize`
|
|
231
|
+
|
|
232
|
+
**使用方法:**
|
|
233
|
+
|
|
234
|
+
在属性配置面板(propsSchema)中使用:
|
|
235
|
+
|
|
236
|
+
```json
|
|
237
|
+
{
|
|
238
|
+
"type": "xObjectDataApi",
|
|
239
|
+
"name": "dataSource",
|
|
240
|
+
"label": "数据源配置"
|
|
241
|
+
}
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
**组件属性:**
|
|
245
|
+
|
|
246
|
+
- `name`: 字段名称
|
|
247
|
+
- `label`: 标签文本
|
|
248
|
+
- `disabled`: 是否禁用
|
|
249
|
+
- `value`: 当前值,格式为 `{ xObjectApiKey: string, fields: string[], fieldDescList: object[], page: number, pageSize: number }`
|
|
250
|
+
- `xObjectApiKey`: 选择的实体 API Key
|
|
251
|
+
- `fields`: 选中的字段列表
|
|
252
|
+
- `fieldDescList`: 字段信息列表
|
|
253
|
+
- `page`: 页码,默认为 1(默认展示第几页)
|
|
254
|
+
- `pageSize`: 每页条数,默认为 20(每页展示多少条数据)
|
|
255
|
+
- `onChange`: 值变化回调
|
|
256
|
+
|
|
257
|
+
---
|
|
258
|
+
|
|
259
|
+
### xObjectDetailApi - 实体详情数据源
|
|
260
|
+
|
|
261
|
+
这是一个用于配置获取实体业务详情数据的属性配置项。
|
|
262
|
+
|
|
263
|
+
**功能特性:**
|
|
264
|
+
1. **输入框展示**:以输入框形式展示当前配置的实体、业务数据ID和字段信息
|
|
265
|
+
2. **设置按钮**:右侧设置图标,点击打开配置弹窗
|
|
266
|
+
3. **实体选择**:弹窗中支持下拉选择实体(标准实体/自定义实体)
|
|
267
|
+
4. **业务数据ID选择**:根据选择的实体,使用 xObject.query 获取业务数据列表,支持选择具体的业务数据ID
|
|
268
|
+
5. **字段选择**:使用 antd Transfer 组件选择字段,默认全部选中
|
|
269
|
+
6. **数据存储**:选择的实体ID存储到 `xObjectApiKey`,业务数据ID存储到 `objectId`,字段列表存储到 `fieldDescList`
|
|
270
|
+
|
|
271
|
+
**使用方法:**
|
|
272
|
+
|
|
273
|
+
在属性配置面板(propsSchema)中使用:
|
|
274
|
+
|
|
275
|
+
```json
|
|
276
|
+
{
|
|
277
|
+
"type": "xObjectDetailApi",
|
|
278
|
+
"name": "dataSource",
|
|
279
|
+
"label": "业务详情数据源配置"
|
|
280
|
+
}
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
**组件属性:**
|
|
284
|
+
|
|
285
|
+
- `name`: 字段名称
|
|
286
|
+
- `label`: 标签文本
|
|
287
|
+
- `disabled`: 是否禁用
|
|
288
|
+
- `value`: 当前值,格式为 `{ xObjectApiKey: string, objectId: string }`
|
|
289
|
+
- `onChange`: 值变化回调
|
|
290
|
+
|
|
291
|
+
**特性:**
|
|
292
|
+
- **实体类型切换**:支持标准实体和自定义实体的切换
|
|
293
|
+
- **智能联动**:选择实体后自动加载对应的业务数据列表和字段列表
|
|
294
|
+
- **搜索过滤**:所有选择器都支持搜索过滤功能
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
### selectFieldsApi - 字段 apiKey 多选(穿梭框)
|
|
299
|
+
|
|
300
|
+
用于在已配置实体数据源的前提下,通过穿梭框多选实体字段的 apiKey 列表。依赖同表单中的实体配置(xObjectApiKey),需先配置实体数据源。
|
|
301
|
+
|
|
302
|
+
**功能特性:**
|
|
303
|
+
1. **输入框展示**:以只读输入框展示「已选择 N 个字段」
|
|
304
|
+
2. **设置按钮**:右侧设置图标,点击打开「字段选择」弹窗
|
|
305
|
+
3. **穿梭框选择**:弹窗内使用 Transfer 在「可选字段」与「已选字段」间勾选,支持搜索
|
|
306
|
+
4. **数据存储**:选中的字段 apiKey 列表存储到 value(`string[]`)
|
|
307
|
+
5. **联动数据源**:通过 `xObjectApiKey` 指定从 `props.data` 中读取实体 key 的路径,实体变化时会重新拉取字段列表
|
|
308
|
+
|
|
309
|
+
**使用方法:**
|
|
310
|
+
|
|
311
|
+
在属性配置面板(propsSchema)中,需与提供 xObjectApiKey 的配置项(如 xObjectDataApi、xObjectDetailApi)同表单使用:
|
|
312
|
+
|
|
313
|
+
```json
|
|
314
|
+
{
|
|
315
|
+
"type": "selectFieldsApi",
|
|
316
|
+
"name": "fields",
|
|
317
|
+
"label": "选择字段",
|
|
318
|
+
"xObjectApiKey": "dataSource.xObjectApiKey"
|
|
319
|
+
}
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
**组件属性:**
|
|
323
|
+
|
|
324
|
+
- `name`: 字段名称
|
|
325
|
+
- `label`: 标签文本
|
|
326
|
+
- `disabled`: 是否禁用
|
|
327
|
+
- `xObjectApiKey`: 从 `props.data` 中获取实体 API Key 的 key 名,不传则默认为 `'xObjectApiKey'`。若实体在嵌套对象中可传路径,如 `'dataSource.xObjectApiKey'`
|
|
328
|
+
- `value`: 当前值,格式为 `string[]`(字段 apiKey 列表)
|
|
329
|
+
- `onChange`: 值变化回调
|
|
330
|
+
|
|
331
|
+
---
|
|
332
|
+
|
|
333
|
+
### selectFieldDescApi - 字段描述选择(下拉单选/多选)
|
|
334
|
+
|
|
335
|
+
用于在已配置实体数据源的前提下,通过下拉选择实体字段,支持单选或多选。选中的值以「字段描述」对象数组形式存储(含 label、value/apiKey)。依赖同表单中的实体配置(xObjectApiKey)。
|
|
336
|
+
|
|
337
|
+
**功能特性:**
|
|
338
|
+
1. **下拉选择**:以 Select 形式展示,支持搜索、清空
|
|
339
|
+
2. **单选/多选**:通过 `mode` 控制,可选 `'multiple'` 或 `'tags'`
|
|
340
|
+
3. **数据存储**:选中的值存储为 `Array<{ label: string; value: string }>`,其中 value 为字段 apiKey
|
|
341
|
+
4. **联动数据源**:通过 `xObjectApiKey` 指定从 `props.data` 中读取实体 key 的路径,实体变化时会重新加载字段列表
|
|
342
|
+
|
|
343
|
+
**使用方法:**
|
|
344
|
+
|
|
345
|
+
在属性配置面板(propsSchema)中,需与提供 xObjectApiKey 的配置项同表单使用:
|
|
346
|
+
|
|
347
|
+
```json
|
|
348
|
+
{
|
|
349
|
+
"type": "selectFieldDescApi",
|
|
350
|
+
"name": "selectFieldDesc",
|
|
351
|
+
"label": "绑定字段",
|
|
352
|
+
"xObjectApiKey": "entityApiKey.xObjectApiKey",
|
|
353
|
+
"mode": "tags",
|
|
354
|
+
"placeholder": "请至少选择一个要显示的字段"
|
|
355
|
+
}
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
**组件属性:**
|
|
359
|
+
|
|
360
|
+
- `name`: 字段名称
|
|
361
|
+
- `label`: 标签文本
|
|
362
|
+
- `disabled`: 是否禁用
|
|
363
|
+
- `placeholder`: 占位文案
|
|
364
|
+
- `xObjectApiKey`: 从 `props.data` 中获取实体 API Key 的 key 名或路径,不传则默认为 `'xObjectApiKey'`,如 `'entityApiKey.xObjectApiKey'`
|
|
365
|
+
- `mode`: 可选 `'multiple'`(多选)或 `'tags'`(多选标签形式),不传为单选
|
|
366
|
+
- `value`: 当前值,格式为 `Array<{ label: string; value: string }>`
|
|
367
|
+
- `onChange`: 值变化回调
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
## 三、NeoCRM 自定义表单配置项
|
|
372
|
+
说明:平台添加的表单配置项(使用 antd 组件开发)。
|
|
373
|
+
|
|
374
|
+
### 表单输入组件
|
|
375
|
+
以下组件均可作为属性配置项使用:
|
|
376
|
+
|
|
377
|
+
- **neoInput** - Input 输入框
|
|
378
|
+
- **neoInputNumber** - InputNumber 数字输入框
|
|
379
|
+
- **neoInputTree** - InputTree 树形输入框
|
|
380
|
+
- **neoSearch** - Search 搜索框
|
|
381
|
+
- **neo_select** - Select 选择器
|
|
382
|
+
- **neoCustomSelect** - CustomSelect 自定义选择器
|
|
383
|
+
- **neoTreeSelect** - TreeSelect 树形选择器
|
|
384
|
+
- **neoCascader** - Cascader 级联选择器
|
|
385
|
+
- **neoAutoComplete** - AutoComplete 自动完成
|
|
386
|
+
- **neoMentions** - Mentions 提及
|
|
387
|
+
- **neoDatePicker** - DatePicker 日期选择器
|
|
388
|
+
- **neoTimePicker** - TimePicker 时间选择器
|
|
389
|
+
- **neoSwitch** - Switch 开关
|
|
390
|
+
- **neoRadio** - Radio 单选框
|
|
391
|
+
- **neoCheckbox** - Checkbox 复选框
|
|
392
|
+
- **neoCheckboxGroup** - CheckboxGroup 复选框组
|
|
393
|
+
- **neoRate** - Rate 评分
|
|
394
|
+
- **neoSlider** - Slider 滑动输入条
|
|
395
|
+
- **neoUpload** - Upload 上传
|
|
396
|
+
- **neoRichText** - RichText 富文本编辑器
|
|
397
|
+
- **neoEditor** - Editor 编辑器
|
|
398
|
+
|
|
399
|
+
---
|
|
400
|
+
|
|
401
|
+
### panelSwitch - 属性面板开关
|
|
402
|
+
|
|
403
|
+
用于在属性配置面板中配置布尔型开关项,基于 antd Switch,适用于「是否显示」「是否禁用」等二选一配置。
|
|
404
|
+
|
|
405
|
+
**功能特性:**
|
|
406
|
+
1. **开关展示**:以 Switch 形式展示,支持选中/未选中时的文案(checkedChildren、unCheckedChildren)
|
|
407
|
+
2. **数据存储**:当前是否选中存储到 value(boolean)
|
|
408
|
+
3. **与 amis 联动**:通过 ScopedContext 注册,支持 amis 表单项的 receive 等机制
|
|
409
|
+
|
|
410
|
+
**使用方法:**
|
|
411
|
+
|
|
412
|
+
在属性配置面板(propsSchema)中使用:
|
|
413
|
+
|
|
414
|
+
```json
|
|
415
|
+
{
|
|
416
|
+
"type": "panelSwitch",
|
|
417
|
+
"name": "disableSearch",
|
|
418
|
+
"label": "隐藏搜索",
|
|
419
|
+
"defaultChecked": false
|
|
420
|
+
}
|
|
421
|
+
```
|
|
422
|
+
|
|
423
|
+
**组件属性:**
|
|
424
|
+
|
|
425
|
+
- `name`: 字段名称
|
|
426
|
+
- `label`: 标签文本
|
|
427
|
+
- `value` / `defaultChecked`: 当前值或默认是否选中(boolean)
|
|
428
|
+
- `checkedChildren`: 选中时右侧文案,可为字符串或返回 ReactNode 的函数
|
|
429
|
+
- `unCheckedChildren`: 未选中时右侧文案,可为字符串或返回 ReactNode 的函数
|
|
430
|
+
- `disabled`: 是否禁用
|
|
431
|
+
- `size`: 尺寸,可选 `'small'` | `'default'`
|
|
432
|
+
- `onChange`: 值变化回调
|
|
433
|
+
|
|
434
|
+
---
|
|
435
|
+
|
|
436
|
+
### panelNumber - 属性面板数字输入
|
|
437
|
+
|
|
438
|
+
用于在属性配置面板中配置数字型输入,基于 antd InputNumber,适用于「条数」「步长」「精度」等数值配置。
|
|
439
|
+
|
|
440
|
+
**功能特性:**
|
|
441
|
+
1. **数字输入**:以 InputNumber 形式展示,支持步进、最小值/最大值、精度等
|
|
442
|
+
2. **数据存储**:当前数值存储到 value(number | null)
|
|
443
|
+
3. **与 amis 联动**:通过 ScopedContext 注册,支持 amis 表单项的 receive 等机制
|
|
444
|
+
|
|
445
|
+
**使用方法:**
|
|
446
|
+
|
|
447
|
+
在属性配置面板(propsSchema)中使用:
|
|
448
|
+
|
|
449
|
+
```json
|
|
450
|
+
{
|
|
451
|
+
"type": "panelNumber",
|
|
452
|
+
"name": "initialListSize",
|
|
453
|
+
"label": "初始化展示条数",
|
|
454
|
+
"value": 3,
|
|
455
|
+
"min": 1,
|
|
456
|
+
"max": 100
|
|
457
|
+
}
|
|
458
|
+
```
|
|
459
|
+
|
|
460
|
+
**组件属性:**
|
|
461
|
+
|
|
462
|
+
- `name`: 字段名称
|
|
463
|
+
- `label`: 标签文本
|
|
464
|
+
- `value` / `defaultValue`: 当前值或默认值(number | null)
|
|
465
|
+
- `min`: 最小值
|
|
466
|
+
- `max`: 最大值
|
|
467
|
+
- `step`: 步长,可为数字或字符串
|
|
468
|
+
- `precision`: 数值精度(小数位数)
|
|
469
|
+
- `disabled`: 是否禁用
|
|
470
|
+
- `size`: 尺寸,可选 `'large'` | `'middle'` | `'small'`
|
|
471
|
+
- `onChange`: 值变化回调
|
|
472
|
+
|
|
473
|
+
---
|
|
474
|
+
|
|
475
|
+
### panelColor - 属性面板颜色选择器
|
|
476
|
+
|
|
477
|
+
用于在属性配置面板中配置颜色值,基于 `react-color` 的 `SketchPicker`,支持选择带透明度的颜色,适用于「背景色」「边框色」「文字颜色」等配置。
|
|
478
|
+
|
|
479
|
+
**功能特性:**
|
|
480
|
+
1. **颜色选择**:以按钮+弹出层形式展示,点击后打开颜色选择器,支持调节色相、明度和透明度
|
|
481
|
+
2. **数据存储**:颜色值以 `string` 形式存储到 `value`,支持 `#RRGGBB` 或 `rgba(r,g,b,a)` 两种格式
|
|
482
|
+
3. **透明度支持**:当选择带透明度的颜色时,将自动转换为 `rgba` 字符串存储
|
|
483
|
+
4. **清除颜色**:支持一键清除当前颜色值(设置为 `undefined`),恢复为透明或默认状态
|
|
484
|
+
5. **禁用态展示**:禁用时仅展示当前颜色块,不可点击编辑
|
|
485
|
+
6. **与 amis 联动**:通过 `ScopedContext` 注册,支持 amis 表单项的 `receive` 等机制
|
|
486
|
+
|
|
487
|
+
**使用方法:**
|
|
488
|
+
|
|
489
|
+
在属性配置面板(propsSchema)中使用:
|
|
490
|
+
|
|
491
|
+
```json
|
|
492
|
+
{
|
|
493
|
+
"type": "panelColor",
|
|
494
|
+
"name": "backgroundColor",
|
|
495
|
+
"label": "背景颜色",
|
|
496
|
+
"defaultValue": "rgba(255, 255, 255, 1)"
|
|
497
|
+
}
|
|
498
|
+
```
|
|
499
|
+
|
|
500
|
+
**组件属性:**
|
|
501
|
+
|
|
502
|
+
- `name`: 字段名称
|
|
503
|
+
- `label`: 标签文本
|
|
504
|
+
- `value` / `defaultValue`: 当前颜色值或默认颜色值,支持 `#RRGGBB` 或 `rgba(r,g,b,a)` 字符串
|
|
505
|
+
- `disabled`: 是否禁用
|
|
506
|
+
- `className`: 自定义样式类名
|
|
507
|
+
- `onChange`: 颜色变化回调,参数为 `string | undefined`(当前颜色值字符串或 `undefined`)
|
|
508
|
+
|
|
509
|
+
---
|
|
510
|
+
|
|
511
|
+
### dataViewIdSelect - 实体视图选择
|
|
512
|
+
|
|
513
|
+
用于在属性配置面板中选择指定实体下的视图(如大列表组件 / 列表布局 / 列表视图),基于 antd `Select` 开发,仅支持单选。依赖同表单中的实体配置(`xObjectApiKey`),需先配置实体数据源。
|
|
514
|
+
|
|
515
|
+
**功能特性:**
|
|
516
|
+
1. **视图列表下拉选择**:以下拉框形式展示当前实体下可用的视图列表,仅支持单选
|
|
517
|
+
2. **自动加载视图**:根据配置的 `xObjectApiKey`,自动请求接口 `/rest/data/v2.0/layouts/listLayout` 加载对应实体的视图列表
|
|
518
|
+
3. **搜索与清空**:支持输入关键字搜索视图名称,支持一键清空已选视图
|
|
519
|
+
4. **数据存储**:选中的视图 ID 以字符串形式存储到 `value`,仅记录 `viewId`(不记录 label)
|
|
520
|
+
5. **联动数据源**:通过 `xObjectApiKey` 指定从 `props.data` 中读取实体 key 的路径,当实体变更时自动重新加载视图列表
|
|
521
|
+
6. **缺少实体提醒**:当未获取到 `xObjectApiKey` 时,控件会禁用并在下方提示「请先配置实体数据源」
|
|
522
|
+
|
|
523
|
+
**使用方法:**
|
|
524
|
+
|
|
525
|
+
在属性配置面板(propsSchema)中,需与提供 `xObjectApiKey` 的配置项(如 `xObjectDataApi`、`xObjectDetailApi`)同表单使用:
|
|
526
|
+
|
|
527
|
+
```json
|
|
528
|
+
{
|
|
529
|
+
"type": "dataViewIdSelect",
|
|
530
|
+
"name": "listViewId",
|
|
531
|
+
"label": "关联视图",
|
|
532
|
+
"xObjectApiKey": "dataSource.xObjectApiKey",
|
|
533
|
+
"placeholder": "请选择列表视图"
|
|
534
|
+
}
|
|
535
|
+
```
|
|
536
|
+
|
|
537
|
+
**组件属性:**
|
|
538
|
+
|
|
539
|
+
- `name`: 字段名称
|
|
540
|
+
- `label`: 标签文本
|
|
541
|
+
- `disabled`: 是否禁用
|
|
542
|
+
- `placeholder`: 占位文案,不传时默认显示「请选择视图」
|
|
543
|
+
- `xObjectApiKey`: 从 `props.data` 中获取实体 API Key 的 key 名或路径,不传则默认为 `'xObjectApiKey'`,如 `'dataSource.xObjectApiKey'`
|
|
544
|
+
- `value`: 当前值,格式为 `string`,表示所选视图的 `viewId`
|
|
545
|
+
- `onChange`: 值变化回调,参数为 `string | undefined`(当前选中的视图 ID 或 `undefined`)
|
|
546
|
+
|
|
547
|
+
---
|
|
548
|
+
|
|
549
|
+
## 使用说明
|
|
550
|
+
|
|
551
|
+
### amis 表单项
|
|
552
|
+
- 以上 amis 表单项基于 amis 1.1.5 私有化版本
|
|
553
|
+
- 相关表单项使用说明请见 [amis 使用文档](https://aisuda.bce.baidu.com/amis/zh-CN/components/form/index)
|
|
554
|
+
|
|
555
|
+
### NeoCRM 表单组件
|
|
556
|
+
- NeoCRM 自定义表单组件是在平台中注册的增强型表单组件
|
|
557
|
+
- 这些组件在 amis 基础上提供了更贴合 NeoCRM 业务场景的功能
|
|
558
|
+
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// 导入自定义配置项(用于对接复杂自定义配置)
|
|
2
|
-
|
|
2
|
+
import './customStyleConfig';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* @file 数值指标组件对接编辑器的描述文件
|
|
@@ -113,7 +113,7 @@ export class TargetNumberModel {
|
|
|
113
113
|
label: '绑定字段',
|
|
114
114
|
placeholder: '请至少选择一个要显示的字段',
|
|
115
115
|
},
|
|
116
|
-
|
|
116
|
+
///*
|
|
117
117
|
{
|
|
118
118
|
type: 'customStyleConfig',
|
|
119
119
|
name: 'targetNumberStyle',
|
|
@@ -121,7 +121,7 @@ export class TargetNumberModel {
|
|
|
121
121
|
viewStyle: 'tabs', // 'tabs'、'fold'
|
|
122
122
|
wideScreen: false, // 是否开启宽屏展示模式
|
|
123
123
|
},
|
|
124
|
-
|
|
124
|
+
//*/
|
|
125
125
|
];
|
|
126
126
|
}
|
|
127
127
|
|