mirror of
https://gitee.com/baidu/amis.git
synced 2024-11-29 18:48:45 +08:00
fix:修复部分组件事件动作问题&补充组件动作表文档&规范事件动作参数类型 (#4152)
* fix:修复部分组件事件动作问题&补充组件动作表文档&规范事件动作参数类型 * fix:修复部分组件事件动作问题&补充组件动作表文档&规范事件动作参数类型 * fix:input-range类型声明问题 * fix:input-range单测问题 * fix:input-range单测u snapshot
This commit is contained in:
parent
e89e82af80
commit
e6d2b2a035
@ -577,9 +577,9 @@ exports[`Renderer:range:multiple 1`] = `
|
||||
/>
|
||||
</span>
|
||||
<span
|
||||
aria-disabled="true"
|
||||
aria-disabled="false"
|
||||
aria-label="Decrease Value"
|
||||
class="cxd-Number-handler cxd-Number-handler-down cxd-Number-handler-down-disabled"
|
||||
class="cxd-Number-handler cxd-Number-handler-down"
|
||||
role="button"
|
||||
unselectable="on"
|
||||
>
|
||||
@ -595,12 +595,12 @@ exports[`Renderer:range:multiple 1`] = `
|
||||
<input
|
||||
aria-valuemax="100"
|
||||
aria-valuemin="0"
|
||||
aria-valuenow="0"
|
||||
aria-valuenow="7"
|
||||
autocomplete="off"
|
||||
class="cxd-Number-input"
|
||||
role="spinbutton"
|
||||
step="1"
|
||||
value="0"
|
||||
value="7"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@ -613,11 +613,11 @@ exports[`Renderer:range:multiple 1`] = `
|
||||
>
|
||||
<div
|
||||
class="cxd-InputRange-track-active"
|
||||
style="width: 100%; left: 0%;"
|
||||
style="width: 6%; left: 7%;"
|
||||
/>
|
||||
<div
|
||||
class="cxd-InputRange-handle"
|
||||
style="left: 0%; z-index: 1; position: relative;"
|
||||
style="left: 7%; z-index: 1; position: relative;"
|
||||
>
|
||||
<div
|
||||
class="cxd-InputRange-handle-icon"
|
||||
@ -632,7 +632,7 @@ exports[`Renderer:range:multiple 1`] = `
|
||||
style="position: relative;"
|
||||
>
|
||||
<span>
|
||||
0
|
||||
7
|
||||
</span>
|
||||
<div
|
||||
class="resize-sensor"
|
||||
@ -716,7 +716,7 @@ exports[`Renderer:range:multiple 1`] = `
|
||||
</div>
|
||||
<div
|
||||
class="cxd-InputRange-handle"
|
||||
style="left: 100%; z-index: 1; position: relative;"
|
||||
style="left: 13%; z-index: 1; position: relative;"
|
||||
>
|
||||
<div
|
||||
class="cxd-InputRange-handle-icon"
|
||||
@ -731,7 +731,7 @@ exports[`Renderer:range:multiple 1`] = `
|
||||
style="position: relative;"
|
||||
>
|
||||
<span>
|
||||
100
|
||||
13
|
||||
</span>
|
||||
<div
|
||||
class="resize-sensor"
|
||||
@ -825,9 +825,9 @@ exports[`Renderer:range:multiple 1`] = `
|
||||
class="cxd-Number-handler-wrap"
|
||||
>
|
||||
<span
|
||||
aria-disabled="true"
|
||||
aria-disabled="false"
|
||||
aria-label="Increase Value"
|
||||
class="cxd-Number-handler cxd-Number-handler-up cxd-Number-handler-up-disabled"
|
||||
class="cxd-Number-handler cxd-Number-handler-up"
|
||||
role="button"
|
||||
unselectable="on"
|
||||
>
|
||||
@ -855,18 +855,18 @@ exports[`Renderer:range:multiple 1`] = `
|
||||
<input
|
||||
aria-valuemax="100"
|
||||
aria-valuemin="0"
|
||||
aria-valuenow="100"
|
||||
aria-valuenow="13"
|
||||
autocomplete="off"
|
||||
class="cxd-Number-input"
|
||||
role="spinbutton"
|
||||
step="1"
|
||||
value="100"
|
||||
value="13"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a
|
||||
class="cxd-InputRange-clear is-active"
|
||||
class="cxd-InputRange-clear"
|
||||
>
|
||||
<icon-mock
|
||||
classname="icon icon-close"
|
||||
|
@ -70,3 +70,10 @@ order: 99
|
||||
- `isDefaultPage` 当你需要自定义 404 页面的时候有用,不要出现多个这样的页面,因为只有第一个才会有用。
|
||||
- `visible` 有些页面可能不想出现在菜单中,可以配置成 `false`,另外带参数的路由无需配置,直接就是不可见的。
|
||||
- `className` 菜单类名。
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------- | ---------------- |
|
||||
| reload | - | 刷新(重新加载) |
|
||||
| setValue | `value: object` 更新的数据 | 更新数据 |
|
||||
|
@ -200,15 +200,17 @@ order: 36
|
||||
| scheduleClassNames | `Array<string>` | `['bg-warning', 'bg-danger', 'bg-success', 'bg-info', 'bg-secondary']` | 日历中展示日程的颜色,参考[背景色](https://baidu.gitee.io/amis/zh-CN/style/background/background-color) |
|
||||
| scheduleAction | `SchemaNode` | | 自定义日程展示 |
|
||||
| largeMode | `boolean` | `false` | 放大模式 |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | ------ |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据 |
|
||||
|
@ -450,3 +450,10 @@ window.echarts = amisRequire('echarts');
|
||||
| height | `string` | | 设置根元素的高度 |
|
||||
| replaceChartOption | `boolean` | `false` | 每次更新是完全覆盖配置项还是追加? |
|
||||
| `trackExpression` | `string` | | 当这个表达式的值有变化时更新图表 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------- | ------------------------------------------ |
|
||||
| reload | - | 刷新(重新加载) |
|
||||
| setValue | `value: object` 更新的数据 | 更新数据,等于更新图表所依赖数据域中的变量 |
|
||||
|
@ -872,7 +872,8 @@ feedback 反馈弹框是指,在 ajax 请求后,可以显示一个弹框,
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | ------------ |
|
||||
| confirm | - | 确认(提交) |
|
||||
| cancel | - | 取消(关闭) |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------- | ------------ |
|
||||
| confirm | - | 确认(提交) |
|
||||
| cancel | - | 取消(关闭) |
|
||||
| setValue | `value: object` 更新的数据 | 更新数据 |
|
||||
|
@ -295,7 +295,8 @@ order: 43
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | ------------ |
|
||||
| confirm | - | 确认(提交) |
|
||||
| cancel | - | 取消(关闭) |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------- | ------------ |
|
||||
| confirm | - | 确认(提交) |
|
||||
| cancel | - | 取消(关闭) |
|
||||
| setValue | `value: object` 更新的数据 | 更新数据 |
|
||||
|
@ -162,3 +162,18 @@ order: 6
|
||||
| joinValues | `boolean` | `true` | [拼接值](./options#%E6%8B%BC%E6%8E%A5%E5%80%BC-joinvalues) |
|
||||
| extractValue | `boolean` | `false` | [提取值](./options#%E6%8F%90%E5%8F%96%E5%A4%9A%E9%80%89%E5%80%BC-extractvalue) |
|
||||
| autoFill | `object` | | [自动填充](./options#%E8%87%AA%E5%8A%A8%E5%A1%AB%E5%85%85-autofill) |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | --------------- | ------ |
|
||||
| change | `value: string` | 值变化 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据 |
|
||||
|
@ -57,13 +57,15 @@ order: 7
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| change | `value: string \| Option[]` 选中值 | 选中值发生变化时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 选中值 | 选中值发生变化时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,多个值用`,`分隔 |
|
||||
|
@ -68,6 +68,7 @@ order: 8
|
||||
勾选上例中的勾选框,观察数据域变化,会发现勾选后值为`1`,而取消勾选后为`0`
|
||||
|
||||
## 按钮模式
|
||||
|
||||
```schema: scope="body"
|
||||
{
|
||||
"type": "form",
|
||||
@ -80,31 +81,34 @@ order: 8
|
||||
"trueValue": true,
|
||||
"falseValue": false,
|
||||
"optionType": "button",
|
||||
"option": "选项说明",
|
||||
"checked": true
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## 属性表
|
||||
|
||||
除了支持 [普通表单项属性表](./formitem#%E5%B1%9E%E6%80%A7%E8%A1%A8) 中的配置以外,还支持下面一些配置
|
||||
|
||||
| 属性名 | 类型 | 默认值 | 说明 |
|
||||
| ---------- | -------- | --------- | ---------------- |
|
||||
| option | `string` | | 选项说明 |
|
||||
| trueValue | `string|number|boolean` | `true` | 标识真值 |
|
||||
| falseValue | `string|number|boolean` | `false` | 标识假值 |
|
||||
| optionType | `default|button` | `default` | 设置option类型 |
|
||||
| 属性名 | 类型 | 默认值 | 说明 |
|
||||
| ---------- | ------------------------- | --------- | ---------------- |
|
||||
| option | `string` | | 选项说明 |
|
||||
| trueValue | `string|number|boolean` | `true` | 标识真值 |
|
||||
| falseValue | `string|number|boolean` | `false` | 标识假值 |
|
||||
| optionType | `default|button` | `default` | 设置 option 类型 |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| change | `value: boolean` 选中状态 | 选中状态发生变化时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ------------------------- | ---------------------- |
|
||||
| change | `value: boolean` 选中状态 | 选中状态发生变化时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string \|number \|boolean` 更新的值 | 更新数据 |
|
||||
|
@ -346,13 +346,15 @@ order: 9
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------------------- | -------------------- |
|
||||
| change | `value: string \| Option[]` 选中值 | 选中值发生变化时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 选中值 | 选中值发生变化时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,多个值用`,`分隔 |
|
||||
|
@ -912,4 +912,8 @@ combo 还有一个作用是增加层级,比如返回的数据是一个深层
|
||||
|
||||
## 动作表
|
||||
|
||||
暂无
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ----------------------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: object \| Array<object>` 更新的值 | 更新数据,对象数组针对开启`multiple`模式 |
|
||||
|
@ -93,6 +93,9 @@ order: 17
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | -------- |
|
||||
| focus | - | 获取焦点 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| focus | - | 获取焦点,焦点落在右侧编辑面板 |
|
||||
| setValue | `value: string` 更新的右侧编辑面板中的值 | 更新数据 |
|
||||
|
@ -172,6 +172,9 @@ amis 的编辑器是基于 monaco 开发的,如果想进行深度定制,比
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | -------- |
|
||||
| focus | - | 获取焦点 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| focus | - | 获取焦点 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据 |
|
||||
|
@ -1218,10 +1218,11 @@ Form 支持轮询初始化接口,步骤如下:
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | -------- |
|
||||
| submit | - | 提交表单 |
|
||||
| reset | - | 重置表单 |
|
||||
| clear | - | 清空表单 |
|
||||
| validate | - | 校验表单 |
|
||||
| reload | - | 重新加载 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------ | -------------------------- |
|
||||
| submit | - | 提交表单 |
|
||||
| reset | - | 重置表单 |
|
||||
| clear | - | 清空表单 |
|
||||
| validate | - | 校验表单 |
|
||||
| reload | - | 刷新(重新加载) |
|
||||
| setValue | `value: object` 更新的表单数据 | 更新数据,对数据进行 merge |
|
||||
|
@ -84,13 +84,14 @@ order: 10
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| change | `value: number \| string` 选中值 | 选中值发生变化时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | -------------------------------- | -------------------- |
|
||||
| change | `value: number \| string` 选中值 | 选中值发生变化时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string \| number` 更新的值 | 更新数据 |
|
||||
|
@ -113,15 +113,16 @@ order: 15
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------------------- | ----------------------------------------------------------- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间区间值,用`,`隔开 | 更新数据,,依赖格式`format`,例如:'1650556800,1652889599' |
|
||||
|
@ -370,17 +370,19 @@ order: 13
|
||||
| utc | `boolean` | `false` | 保存 utc 值 |
|
||||
| clearable | `boolean` | `true` | 是否可清除 |
|
||||
| embed | `boolean` | `false` | 是否内联模式 |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间值 | 更新数据,依赖格式`format`,例如:'1650556800' |
|
||||
|
@ -79,15 +79,16 @@ order: 16
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------------------- | -------------------------------------------------------- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间区间值,用`,`隔开 | 更新数据,依赖格式`format`,例如 '1650556800,1652889599' |
|
||||
|
@ -317,15 +317,16 @@ order: 14
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间值 | 更新数据,依赖格式`format`,例如:'1650556800' |
|
||||
|
@ -232,6 +232,8 @@ order: 14
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: Array<object>` 更新的 excel 解析后数据 | 更新数据 |
|
||||
|
@ -121,3 +121,18 @@ key 只能是字符串,因此输入格式是 `input-text`,但 value 格式
|
||||
| valuePlaceholder | `string` | | value 的提示信息的 |
|
||||
| draggable | `boolean` | true | 是否可拖拽排序 |
|
||||
| defaultValue | | `''` | 默认值 |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ------------------------------------------------------------ | ---------- |
|
||||
| add | value: `string` or `string[]` 现有的数据集 | 添加组合项 |
|
||||
| delete | key: `number` 移除项的索引<br />value: `string` 现有的数据集 | 删除组合项 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: object` 更新的值 | 更新数据 |
|
||||
|
@ -61,15 +61,16 @@ order: 15
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------------------- | -------------------------------------------------------- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间区间值,用`,`隔开 | 更新数据,依赖格式`format`,例如 '1646064000,1651334399' |
|
||||
|
@ -155,15 +155,16 @@ order: 81
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间值 | 更新数据,依赖格式`format`,例如:'1646064000' |
|
||||
|
@ -120,14 +120,16 @@ order: 32
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| ------ | -------------------- | ------------------ |
|
||||
| change | `value: number` 值变化 | 输入值发生变化时触发 |
|
||||
| blur | - | - |
|
||||
| focus | - | - |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: number` 值变化 | 输入值发生变化时触发 |
|
||||
| blur | - | - |
|
||||
| focus | - | - |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ----- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: number` 更新的数值 | 更新数据 |
|
||||
|
@ -26,4 +26,12 @@ order: 35
|
||||
|
||||
## 属性表
|
||||
|
||||
请参考[输入框](./text)
|
||||
请参考[输入框](./input-text)
|
||||
|
||||
## 事件表
|
||||
|
||||
请参考[输入框](./input-text)
|
||||
|
||||
## 动作表
|
||||
|
||||
请参考[输入框](./input-text)
|
||||
|
@ -61,15 +61,16 @@ order: 15
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------------------- | -------------------------------------------------------- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间区间值,用`,`隔开 | 更新数据,依赖格式`format`,例如 '1640966400,1664553600' |
|
||||
|
@ -28,15 +28,16 @@ order: 62
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间值 | 更新数据,依赖格式`format`,例如:'1640966400' |
|
||||
|
@ -255,44 +255,41 @@ order: 38
|
||||
|
||||
当做选择器表单项使用时,除了支持 [普通表单项属性表](./formitem#%E5%B1%9E%E6%80%A7%E8%A1%A8) 中的配置以外,还支持下面一些配置
|
||||
|
||||
| 属性名 | 类型 | 默认值 | 说明 |
|
||||
| ---------------- | ------------------------------------------------------------ | ------- | ------------------------------------------------------------ |
|
||||
| className | `string` | | css 类名 |
|
||||
| value | `number` or `string` or `{min: number, max: number}` or `[number, number]` | | |
|
||||
| min | `number` | `0` | 最小值 |
|
||||
| max | `number` | `100` | 最大值 |
|
||||
| disabled | `boolean` | `false` | 是否禁用 |
|
||||
| step | `number` | `1` | 步长 |
|
||||
| showSteps | `boolean` | `false` | 是否显示步长 |
|
||||
| parts | `number` or `number[]` | `1` | 分割的块数<br/>主持数组传入分块的节点 |
|
||||
| marks | <code>{ [number | string]: ReactNode }</code> or <code>{ [number | string]: { style: CSSProperties, label: ReactNode } }</code> | | 刻度标记<br/>- 支持自定义样式<br/>- 设置百分比 |
|
||||
| tooltipVisible | `boolean` | `false` | 是否显示滑块标签 |
|
||||
| tooltipPlacement | `auto` or `bottom` or `left` or `right` | `top` | 滑块标签的位置,默认`auto`,方向自适应<br/>前置条件:tooltipVisible 不为 false 时有效 |
|
||||
| tipFormatter | `function` | | 控制滑块标签显隐函数<br/>前置条件:tooltipVisible 不为 false 时有效 |
|
||||
| multiple | `boolean` | `false` | 支持选择范围 |
|
||||
| joinValues | `boolean` | `true` | 默认为 `true`,选择的 `value` 会通过 `delimiter` 连接起来,否则直接将以`{min: 1, max: 100}`的形式提交<br/>前置条件:开启`multiple`时有效 |
|
||||
| delimiter | `string` | `,` | 分隔符 |
|
||||
| unit | `string` | | 单位 |
|
||||
| clearable | `boolean` | `false` | 是否可清除<br/>前置条件:开启`showInput`时有效 |
|
||||
| showInput | `boolean` | `false` | 是否显示输入框 |
|
||||
| onChange | `function` | | 当 组件 的值发生改变时,会触发 onChange 事件,并把改变后的值作为参数传入 |
|
||||
| onAfterChange | `function` | | 与 `onmouseup` 触发时机一致,把当前值作为参数传入 |
|
||||
|
||||
| 属性名 | 类型 | 默认值 | 说明 |
|
||||
| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| className | `string` | | css 类名 |
|
||||
| value | `number` or `string` or `{min: number, max: number}` or `[number, number]` | | |
|
||||
| min | `number` | `0` | 最小值 |
|
||||
| max | `number` | `100` | 最大值 |
|
||||
| disabled | `boolean` | `false` | 是否禁用 |
|
||||
| step | `number` | `1` | 步长 |
|
||||
| showSteps | `boolean` | `false` | 是否显示步长 |
|
||||
| parts | `number` or `number[]` | `1` | 分割的块数<br/>主持数组传入分块的节点 |
|
||||
| marks | <code>{ [number | string]: ReactNode }</code> or <code>{ [number | string]: { style: CSSProperties, label: ReactNode } }</code> | | 刻度标记<br/>- 支持自定义样式<br/>- 设置百分比 |
|
||||
| tooltipVisible | `boolean` | `false` | 是否显示滑块标签 |
|
||||
| tooltipPlacement | `auto` or `bottom` or `left` or `right` | `top` | 滑块标签的位置,默认`auto`,方向自适应<br/>前置条件:tooltipVisible 不为 false 时有效 |
|
||||
| tipFormatter | `function` | | 控制滑块标签显隐函数<br/>前置条件:tooltipVisible 不为 false 时有效 |
|
||||
| multiple | `boolean` | `false` | 支持选择范围 |
|
||||
| joinValues | `boolean` | `true` | 默认为 `true`,选择的 `value` 会通过 `delimiter` 连接起来,否则直接将以`{min: 1, max: 100}`的形式提交<br/>前置条件:开启`multiple`时有效 |
|
||||
| delimiter | `string` | `,` | 分隔符 |
|
||||
| unit | `string` | | 单位 |
|
||||
| clearable | `boolean` | `false` | 是否可清除<br/>前置条件:开启`showInput`时有效 |
|
||||
| showInput | `boolean` | `false` | 是否显示输入框 |
|
||||
| onChange | `function` | | 当 组件 的值发生改变时,会触发 onChange 事件,并把改变后的值作为参数传入 |
|
||||
| onAfterChange | `function` | | 与 `onmouseup` 触发时机一致,把当前值作为参数传入 |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|--------------- |------------------------|----------------------|
|
||||
| change | value: `number` or `string` or`{min: number, max: number}` 滑块当前值 | 当值变化时触发的事件 |
|
||||
| blur | - | 输入框失去焦点<br/>前置条件:showInput为true |
|
||||
| focus | - | 输入框获取焦点<br/>前置条件:showInput为true |
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ----------------------------------------------------------------- | ---------------------------------------------- |
|
||||
| change | `value: number \| string \|{min: number, max: number}` 滑块当前值 | 当值变化时触发的事件 |
|
||||
| blur | - | 输入框失去焦点<br/>前置条件:showInput 为 true |
|
||||
| focus | - | 输入框获取焦点<br/>前置条件:showInput 为 true |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|----------------|-------------------------|---------------------|
|
||||
| clear | - | 清除输入框<br />前置条件:showInput 和 clearable 都为 true |
|
||||
| reset | - | 重置到最小值 |
|
||||
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------------------------------------------- | ---------------------------------------------------------- |
|
||||
| clear | - | 清除输入框<br />前置条件:showInput 和 clearable 都为 true |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: number \| string \| {min: number, max: number}` 更新的值 | 更新数据 |
|
||||
|
@ -162,13 +162,14 @@ order: 37
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|----------------|------------------------|----------------------|
|
||||
| change | `value: number` 评分值 | 数值变化 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------- |
|
||||
| change | `value: number` 评分值 | 数值变化 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|----------------|------------------------------|--------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: number` 更新的值 | 更新数据 |
|
||||
|
@ -48,15 +48,17 @@ order: 55
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| change | `value: string \| Option[]` 选中值 | 选中值发生变化时触发 |
|
||||
| blur | `value: string \| Option[]` 选中值 | 失去焦点时触发 |
|
||||
| focus | `value: string \| Option[]` 选中值 | 获得焦点时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 选中值 | 选中值发生变化时触发 |
|
||||
| blur | `value: string` 选中值 | 失去焦点时触发 |
|
||||
| focus | `value: string` 选中值 | 获得焦点时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,多个值用`,`分隔 |
|
||||
|
@ -347,17 +347,20 @@ order: 56
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | --------------------------- | -------- |
|
||||
| click | `value: string \| string[]` | 点击 |
|
||||
| focus | `value: string \| string[]` | 获取焦点 |
|
||||
| blur | `value: string \| string[]` | 失去焦点 |
|
||||
| enter | `value: string \| string[]` | 回车 |
|
||||
| change | `value: string \| string[]` | 值变化 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | --------------- | -------- |
|
||||
| click | `value: string` | 点击 |
|
||||
| focus | `value: string` | 获取焦点 |
|
||||
| blur | `value: string` | 失去焦点 |
|
||||
| enter | `value: string` | 回车 |
|
||||
| change | `value: string` | 值变化 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | -------- |
|
||||
| clear | - | 清空 |
|
||||
| focus | - | 获取焦点 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | -------------------------------------------------- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| focus | - | 获取焦点 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的输入框有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,开启`multiple`多选时用`,`分隔 |
|
||||
|
@ -77,18 +77,18 @@ order: 15
|
||||
| clearable | `boolean` | `true` | 是否可清除 |
|
||||
| embed | `boolean` | `false` | 是否内联模式 |
|
||||
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------------------- | -------------------------------------------------------- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间区间值,用`,`隔开 | 更新数据,依赖格式`format`,例如 '1617206400,1743436800' |
|
||||
|
@ -250,19 +250,20 @@ order: 58
|
||||
| inputFormat | `string` | `HH:mm` | 时间选择器显示格式,即时间戳格式,更多格式类型请参考 [moment](http://momentjs.com/) |
|
||||
| placeholder | `string` | `"请选择时间"` | 占位文本 |
|
||||
| clearable | `boolean` | `true` | 是否可清除 |
|
||||
| timeConstraints | `object` | `true` | |
|
||||
| timeConstraints | `object` | `true` | |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间值 | 更新数据,依赖格式`format`,例如:'1648746120' |
|
||||
|
@ -159,7 +159,7 @@ order: 59
|
||||
|
||||
## 选中父节点是否自动选中子节点
|
||||
|
||||
`autoCheckChildren`默认为true,选中父节点会自动选中子节点,可以设置`"autoCheckChildren": false`,不自动选中子节点
|
||||
`autoCheckChildren`默认为 true,选中父节点会自动选中子节点,可以设置`"autoCheckChildren": false`,不自动选中子节点
|
||||
|
||||
```schema: scope="body"
|
||||
{
|
||||
@ -244,8 +244,8 @@ order: 59
|
||||
```
|
||||
|
||||
## 选中父节点自动选中子节点,数据是否包含父子节点的值
|
||||
`cascade`默认为false,子节点禁止反选,值不包含子节点值,配置`"cascade": true`,子节点可以反选,值包含父子节点值
|
||||
|
||||
`cascade`默认为 false,子节点禁止反选,值不包含子节点值,配置`"cascade": true`,子节点可以反选,值包含父子节点值
|
||||
|
||||
```schema: scope="body"
|
||||
{
|
||||
@ -329,7 +329,7 @@ order: 59
|
||||
}
|
||||
```
|
||||
|
||||
`withChildren`默认为false,子节点禁止反选,值包含父子节点值,配置`withChildren": true`,子节点禁止反选,值包含父子节点值
|
||||
`withChildren`默认为 false,子节点禁止反选,值包含父子节点值,配置`withChildren": true`,子节点禁止反选,值包含父子节点值
|
||||
|
||||
```schema: scope="body"
|
||||
{
|
||||
@ -882,63 +882,62 @@ true false true [{label: 'A/B/C', value: 'a/b/c'},{label: 'A
|
||||
|
||||
当做选择器表单项使用时,除了支持 [普通表单项属性表](./formitem#%E5%B1%9E%E6%80%A7%E8%A1%A8) 中的配置以外,还支持下面一些配置
|
||||
|
||||
| 属性名 | 类型 | 默认值 | 说明 |
|
||||
| ---------------------- | -------------------------------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------- |
|
||||
| options | `Array<object>`或`Array<string>` | | [选项组](./options#%E9%9D%99%E6%80%81%E9%80%89%E9%A1%B9%E7%BB%84-options) |
|
||||
| source | `string`或 [API](../../../../docs/types/api) | | [动态选项组](./options#%E5%8A%A8%E6%80%81%E9%80%89%E9%A1%B9%E7%BB%84-source) |
|
||||
| autoComplete | [API](../../../../docs/types/api) | | [自动提示补全](./options#%E8%87%AA%E5%8A%A8%E8%A1%A5%E5%85%A8-autocomplete) |
|
||||
| multiple | `boolean` | `false` | 是否多选 |
|
||||
| delimiter | `string` | `false` | [拼接符](./options#%E6%8B%BC%E6%8E%A5%E7%AC%A6-delimiter) |
|
||||
| labelField | `string` | `"label"` | [选项标签字段](./options#%E9%80%89%E9%A1%B9%E6%A0%87%E7%AD%BE%E5%AD%97%E6%AE%B5-labelfield) |
|
||||
| valueField | `string` | `"value"` | [选项值字段](./options#%E9%80%89%E9%A1%B9%E5%80%BC%E5%AD%97%E6%AE%B5-valuefield) |
|
||||
| iconField | `string` | `"icon"` | 图标值字段 |
|
||||
| joinValues | `boolean` | `true` | [拼接值](./options#%E6%8B%BC%E6%8E%A5%E5%80%BC-joinvalues) |
|
||||
| extractValue | `boolean` | `false` | [提取值](./options#%E6%8F%90%E5%8F%96%E5%A4%9A%E9%80%89%E5%80%BC-extractvalue) |
|
||||
| creatable | `boolean` | `false` | [新增选项](./options#%E5%89%8D%E7%AB%AF%E6%96%B0%E5%A2%9E-creatable) |
|
||||
| addControls | Array<[表单项](./formitem)> | | [自定义新增表单项](./options#%E8%87%AA%E5%AE%9A%E4%B9%89%E6%96%B0%E5%A2%9E%E8%A1%A8%E5%8D%95%E9%A1%B9-addcontrols) |
|
||||
| addApi | [API](../../../docs/types/api) | | [配置新增选项接口](./options#%E9%85%8D%E7%BD%AE%E6%96%B0%E5%A2%9E%E6%8E%A5%E5%8F%A3-addapi) |
|
||||
| editable | `boolean` | `false` | [编辑选项](./options#%E5%89%8D%E7%AB%AF%E7%BC%96%E8%BE%91-editable) |
|
||||
| editControls | Array<[表单项](./formitem)> | | [自定义编辑表单项](./options#%E8%87%AA%E5%AE%9A%E4%B9%89%E7%BC%96%E8%BE%91%E8%A1%A8%E5%8D%95%E9%A1%B9-editcontrols) |
|
||||
| editApi | [API](../../../docs/types/api) | | [配置编辑选项接口](./options#%E9%85%8D%E7%BD%AE%E7%BC%96%E8%BE%91%E6%8E%A5%E5%8F%A3-editapi) |
|
||||
| removable | `boolean` | `false` | [删除选项](./options#%E5%88%A0%E9%99%A4%E9%80%89%E9%A1%B9) |
|
||||
| deleteApi | [API](../../../docs/types/api) | | [配置删除选项接口](./options#%E9%85%8D%E7%BD%AE%E5%88%A0%E9%99%A4%E6%8E%A5%E5%8F%A3-deleteapi) |
|
||||
| searchable | `boolean` | `false` | 是否可检索,仅在 type 为 `tree-select` 的时候生效 |
|
||||
| hideRoot | `boolean` | `true` | 如果想要显示个顶级节点,请设置为 `false` |
|
||||
| rootLabel | `boolean` | `"顶级"` | 当 `hideRoot` 不为 `false` 时有用,用来设置顶级节点的文字。 |
|
||||
| showIcon | `boolean` | `true` | 是否显示图标 |
|
||||
| showRadio | `boolean` | `false` | 是否显示单选按钮,`multiple` 为 `false` 是有效。 |
|
||||
| showOutline | `boolean` | `false` | 是否显示树层级展开线 |
|
||||
| initiallyOpen | `boolean` | `true` | 设置是否默认展开所有层级。 |
|
||||
| unfoldedLevel | `number` | `0` | 设置默认展开的级数,只有`initiallyOpen`不是`true`时生效。 |
|
||||
| autoCheckChildren | `boolean` | `true` | 当选中父节点时级联选择子节点。 |
|
||||
| cascade | `boolean` | `false` | autoCheckChildren为true时生效;默认行为:子节点禁用,值只包含父节点值;设置为true时,子节点可反选,值包含父子节点值。 |
|
||||
| withChildren | `boolean` | `false` | cascade为false时生效,选中父节点时,值里面将包含父子节点的值,否则只会保留父节点的值。
|
||||
| onlyChildren | `boolean` | `false` | autoCheckChildren为true时生效,不受cascade影响;onlyChildren为true,ui行为级联选中子节点,子节点可反选,值只包含子节点的值。 |
|
||||
| rootCreatable | `boolean` | `false` | 是否可以创建顶级节点 |
|
||||
| rootCreateTip | `string` | `"添加一级节点"` | 创建顶级节点的悬浮提示 |
|
||||
| minLength | `number` | | 最少选中的节点数 |
|
||||
| maxLength | `number` | | 最多选中的节点数 |
|
||||
| treeContainerClassName | `string` | | tree 最外层容器类名 |
|
||||
| enableNodePath | `boolean` | `false` | 是否开启节点路径模式 |
|
||||
| pathSeparator | `string` | `/` | 节点路径的分隔符,`enableNodePath`为`true`时生效 |
|
||||
|
||||
| 属性名 | 类型 | 默认值 | 说明 |
|
||||
| ---------------------- | -------------------------------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| options | `Array<object>`或`Array<string>` | | [选项组](./options#%E9%9D%99%E6%80%81%E9%80%89%E9%A1%B9%E7%BB%84-options) |
|
||||
| source | `string`或 [API](../../../../docs/types/api) | | [动态选项组](./options#%E5%8A%A8%E6%80%81%E9%80%89%E9%A1%B9%E7%BB%84-source) |
|
||||
| autoComplete | [API](../../../../docs/types/api) | | [自动提示补全](./options#%E8%87%AA%E5%8A%A8%E8%A1%A5%E5%85%A8-autocomplete) |
|
||||
| multiple | `boolean` | `false` | 是否多选 |
|
||||
| delimiter | `string` | `false` | [拼接符](./options#%E6%8B%BC%E6%8E%A5%E7%AC%A6-delimiter) |
|
||||
| labelField | `string` | `"label"` | [选项标签字段](./options#%E9%80%89%E9%A1%B9%E6%A0%87%E7%AD%BE%E5%AD%97%E6%AE%B5-labelfield) |
|
||||
| valueField | `string` | `"value"` | [选项值字段](./options#%E9%80%89%E9%A1%B9%E5%80%BC%E5%AD%97%E6%AE%B5-valuefield) |
|
||||
| iconField | `string` | `"icon"` | 图标值字段 |
|
||||
| joinValues | `boolean` | `true` | [拼接值](./options#%E6%8B%BC%E6%8E%A5%E5%80%BC-joinvalues) |
|
||||
| extractValue | `boolean` | `false` | [提取值](./options#%E6%8F%90%E5%8F%96%E5%A4%9A%E9%80%89%E5%80%BC-extractvalue) |
|
||||
| creatable | `boolean` | `false` | [新增选项](./options#%E5%89%8D%E7%AB%AF%E6%96%B0%E5%A2%9E-creatable) |
|
||||
| addControls | Array<[表单项](./formitem)> | | [自定义新增表单项](./options#%E8%87%AA%E5%AE%9A%E4%B9%89%E6%96%B0%E5%A2%9E%E8%A1%A8%E5%8D%95%E9%A1%B9-addcontrols) |
|
||||
| addApi | [API](../../../docs/types/api) | | [配置新增选项接口](./options#%E9%85%8D%E7%BD%AE%E6%96%B0%E5%A2%9E%E6%8E%A5%E5%8F%A3-addapi) |
|
||||
| editable | `boolean` | `false` | [编辑选项](./options#%E5%89%8D%E7%AB%AF%E7%BC%96%E8%BE%91-editable) |
|
||||
| editControls | Array<[表单项](./formitem)> | | [自定义编辑表单项](./options#%E8%87%AA%E5%AE%9A%E4%B9%89%E7%BC%96%E8%BE%91%E8%A1%A8%E5%8D%95%E9%A1%B9-editcontrols) |
|
||||
| editApi | [API](../../../docs/types/api) | | [配置编辑选项接口](./options#%E9%85%8D%E7%BD%AE%E7%BC%96%E8%BE%91%E6%8E%A5%E5%8F%A3-editapi) |
|
||||
| removable | `boolean` | `false` | [删除选项](./options#%E5%88%A0%E9%99%A4%E9%80%89%E9%A1%B9) |
|
||||
| deleteApi | [API](../../../docs/types/api) | | [配置删除选项接口](./options#%E9%85%8D%E7%BD%AE%E5%88%A0%E9%99%A4%E6%8E%A5%E5%8F%A3-deleteapi) |
|
||||
| searchable | `boolean` | `false` | 是否可检索,仅在 type 为 `tree-select` 的时候生效 |
|
||||
| hideRoot | `boolean` | `true` | 如果想要显示个顶级节点,请设置为 `false` |
|
||||
| rootLabel | `boolean` | `"顶级"` | 当 `hideRoot` 不为 `false` 时有用,用来设置顶级节点的文字。 |
|
||||
| showIcon | `boolean` | `true` | 是否显示图标 |
|
||||
| showRadio | `boolean` | `false` | 是否显示单选按钮,`multiple` 为 `false` 是有效。 |
|
||||
| showOutline | `boolean` | `false` | 是否显示树层级展开线 |
|
||||
| initiallyOpen | `boolean` | `true` | 设置是否默认展开所有层级。 |
|
||||
| unfoldedLevel | `number` | `0` | 设置默认展开的级数,只有`initiallyOpen`不是`true`时生效。 |
|
||||
| autoCheckChildren | `boolean` | `true` | 当选中父节点时级联选择子节点。 |
|
||||
| cascade | `boolean` | `false` | autoCheckChildren 为 true 时生效;默认行为:子节点禁用,值只包含父节点值;设置为 true 时,子节点可反选,值包含父子节点值。 |
|
||||
| withChildren | `boolean` | `false` | cascade 为 false 时生效,选中父节点时,值里面将包含父子节点的值,否则只会保留父节点的值。 |
|
||||
| onlyChildren | `boolean` | `false` | autoCheckChildren 为 true 时生效,不受 cascade 影响;onlyChildren 为 true,ui 行为级联选中子节点,子节点可反选,值只包含子节点的值。 |
|
||||
| rootCreatable | `boolean` | `false` | 是否可以创建顶级节点 |
|
||||
| rootCreateTip | `string` | `"添加一级节点"` | 创建顶级节点的悬浮提示 |
|
||||
| minLength | `number` | | 最少选中的节点数 |
|
||||
| maxLength | `number` | | 最多选中的节点数 |
|
||||
| treeContainerClassName | `string` | | tree 最外层容器类名 |
|
||||
| enableNodePath | `boolean` | `false` | 是否开启节点路径模式 |
|
||||
| pathSeparator | `string` | `/` | 节点路径的分隔符,`enableNodePath`为`true`时生效 |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|--------------- |------------------------ |----------------------|
|
||||
| change | value: `string` 更新后的数据 | 选中值更改 |
|
||||
| add | value: `string` 新增节点信息 | 新增选项 |
|
||||
| edit | value: `string` 编辑节点信息 | 编辑选项 |
|
||||
| delete | value: `string` 删除节点信息 | 删除选项 |
|
||||
| loadFinished | value: `json` 懒加载返回的数据 | 懒加载完成触发 |
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| ------------ | ------------------------------ | -------------- |
|
||||
| change | value: `string` 更新后的数据 | 选中值更改 |
|
||||
| add | value: `string` 新增节点信息 | 新增选项 |
|
||||
| edit | value: `string` 编辑节点信息 | 编辑选项 |
|
||||
| delete | value: `string` 删除节点信息 | 删除选项 |
|
||||
| loadFinished | value: `json` 懒加载返回的数据 | 懒加载完成触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|----------------|-------------------------------------------------- |---------------------|
|
||||
| expand | openLevel: `number` | 配置展开层级 |
|
||||
| collapse | - | 关闭树|
|
||||
| clear | - | 清除数据 |
|
||||
| reset | - | 重置数据 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| expand | openLevel: `number` | 展开层级 |
|
||||
| collapse | - | 收起 |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,开启`multiple`,多值用`,`分隔 |
|
||||
|
@ -61,15 +61,16 @@ order: 15
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------------------- | -------------------------------------------------------- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间区间值,用`,`隔开 | 更新数据,依赖格式`format`,例如 '1648746120,1648760760' |
|
||||
|
@ -28,15 +28,16 @@ order: 61
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| focus | - | 获得焦点(非内嵌模式) |
|
||||
| blur | - | 失去焦点(非内嵌模式) |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的时间值 | 更新数据,依赖格式`format`,例如:'1617206400' |
|
||||
|
@ -90,3 +90,18 @@ ListSelect 一般用来实现选择,可以单选也可以多选,和 Radio/Ch
|
||||
| extractValue | `boolean` | `false` | [提取值](./options#%E6%8F%90%E5%8F%96%E5%A4%9A%E9%80%89%E5%80%BC-extractvalue) |
|
||||
| autoFill | `object` | | [自动填充](./options#%E8%87%AA%E5%8A%A8%E5%A1%AB%E5%85%85-autofill) |
|
||||
| listClassName | `string` | | 支持配置 list div 的 css 类名。比如: `flex justify-between` |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 选中值 | 选中值发生变化时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,开启`multiple`,多值用`,`分隔 |
|
||||
|
@ -284,13 +284,15 @@ row 模式,每行只能单选某个单元格
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| change | `value: Array` 选中值 | 选中值发生变化时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | --------------------- | -------------------- |
|
||||
| change | `value: Array` 选中值 | 选中值发生变化时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------------------------------------------------------------------------------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ----------------------- | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: Array` 更新的值 | 更新数据 |
|
||||
|
@ -613,20 +613,22 @@ order: 31
|
||||
| searchPromptText | `string` | `"输入内容进行检索"` | 搜索框占位文本 |
|
||||
| noResultsText | `string` | `"未找到任何结果"` | 无结果时的文本 |
|
||||
| multiple | `boolean` | `false` | 可否多选 |
|
||||
| hideNodePathLabel | `boolean` | `false` | 是否隐藏选择框中已选择节点的路径 label 信息
|
||||
| onlyLeaf | `boolean` | `false` | 只允许选择叶子节点 |
|
||||
| hideNodePathLabel | `boolean` | `false` | 是否隐藏选择框中已选择节点的路径 label 信息 |
|
||||
| onlyLeaf | `boolean` | `false` | 只允许选择叶子节点 |
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------------------- | -------------------- |
|
||||
| change | `value: string \| Option[]` 选中值 | 选中值发生变化时触发 |
|
||||
| blur | `value: string \| Option[]` 选中值 | 失去焦点时触发 |
|
||||
| focus | `value: string \| Option[]` 选中值 | 获得焦点时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 选中值 | 选中值发生变化时触发 |
|
||||
| blur | `value: string` 选中值 | 失去焦点时触发 |
|
||||
| focus | `value: string` 选中值 | 获得焦点时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,开启`multiple`时,多个值用`,`分隔 |
|
||||
|
@ -252,13 +252,15 @@ api 返回内容需要包含 options 字段
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | -------------------------------- | -------------------- |
|
||||
| change | `value: string \| Option` 选中值 | 选中值发生变化时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | -------------------- |
|
||||
| change | `value: string` 选中值 | 选中值发生变化时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据 |
|
||||
|
@ -996,19 +996,20 @@ leftOptions 动态加载,默认 source 接口是返回 options 部分,而 le
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------------------- | -------------------- |
|
||||
| change | `value: string \| Option[]` 选中值 | 选中值发生变化时触发 |
|
||||
| blur | `value: string \| Option[]` 选中值 | 失去焦点时触发 |
|
||||
| focus | `value: string \| Option[]` 选中值 | 获得焦点时触发 |
|
||||
| add | - | 新增选项的时候触发 |
|
||||
| edit | `value: Option` 修改的选项 | 编辑选项时触发 |
|
||||
| delete | `value: Option` 删除的选项 | 删除选项时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------------------------------- | -------------------- |
|
||||
| change | `value: string` 选中值 | 选中值发生变化时触发 |
|
||||
| blur | `value: string` 选中值 | 失去焦点时触发 |
|
||||
| focus | `value: string` 选中值 | 获得焦点时触发 |
|
||||
| add | - | 新增选项的时候触发 |
|
||||
| edit | `options: Option[]`,`value: Option` 修改的选项 | 编辑选项时触发 |
|
||||
| delete | `options: Option[]`,`value: Option` 删除的选项 | 删除选项时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ---------------------------- | ---- |
|
||||
| clear | - | 清空 |
|
||||
| reset | `resetValue: boolean` 重置值 | 重置 |
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| reload | - | 刷新(重新加载),只针对配置了`source`的点选按钮有效 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,开启`multiple`,多值用`,`分隔 |
|
||||
|
@ -123,10 +123,12 @@ IconSchema 配置
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| ------ | --------------------------------- | ---------------- |
|
||||
| change | `value: string \| boolean` 值变化 | 开关值发生变化时触发 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | --------------------------------- | -------------------- |
|
||||
| change | `value: string \| boolean` 值变化 | 开关值发生变化时触发 |
|
||||
|
||||
## 动作表
|
||||
|
||||
暂无
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------------------- | -------- |
|
||||
| setValue | `value: string \| boolean` 更新的数据 | 更新数据 |
|
||||
|
@ -160,7 +160,8 @@ icon:
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | ------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,多值用`,`分隔 |
|
||||
|
@ -376,8 +376,9 @@ icon:
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| --------- | -------- | ------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| selectAll | - | 全选 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| --------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| selectAll | - | 全选 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,多值用`,`分隔 |
|
||||
|
@ -112,7 +112,9 @@ order: 57
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | -------- |
|
||||
| clear | - | 清空 |
|
||||
| focus | - | 获取焦点 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| focus | - | 获取焦点 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据 |
|
||||
|
@ -130,7 +130,8 @@ icon:
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------- | ------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,多值用`,`分隔 |
|
||||
|
@ -636,14 +636,15 @@ leftOptions 动态加载,默认 source 接口是返回 options 部分,而 le
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|-------------------|------------------------------------------------|----------------------|
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| -------- | ---------------------- | ------ |
|
||||
| change | `value: string` 时间值 | 值变化 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|-------------------|-------------------------|------------------------|
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 值重置 |
|
||||
| selectAll | - | 全选 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| --------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| selectAll | - | 全选 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,多值用`,`分隔 |
|
||||
|
@ -311,20 +311,20 @@ order: 60
|
||||
|
||||
## 事件表
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
|--------------- |------------------------ |----------------------|
|
||||
| change | value: `string` 更新后的数据 | 选中值更改 |
|
||||
| add | value: `string` 新增节点信息 | 新增选项 |
|
||||
| edit | value: `string` 编辑节点信息 | 编辑选项 |
|
||||
| delete | value: `string` 删除节点信息 | 删除选项 |
|
||||
| loadFinished | value: `json` 懒加载返回的数据 | 懒加载完成触发 |
|
||||
| blur | - | 输入框失去焦点|
|
||||
| focus | - | 输入框获取焦点 |
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| ------------ | ------------------------------------------------ | -------------- |
|
||||
| change | `value: string` 更新后的数据 | 选中值更改 |
|
||||
| add | `options: Option[]`,`value: Option` 新增节点信息 | 新增选项 |
|
||||
| edit | `options: Option[]`,`value: Option` 编辑节点信息 | 编辑选项 |
|
||||
| delete | `options: Option[]`,`value: Option` 删除节点信息 | 删除选项 |
|
||||
| loadFinished | value: `json` 懒加载返回的数据 | 懒加载完成触发 |
|
||||
| blur | - | 输入框失去焦点 |
|
||||
| focus | - | 输入框获取焦点 |
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
|----------------|------------------------ |---------------------|
|
||||
| clear | - | 清除数据 |
|
||||
| reset | - | 重置数据 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | ------------------------ | ------------------------------------------------------ |
|
||||
| clear | - | 清空 |
|
||||
| reset | - | 将值重置为`resetValue`,若没有配置`resetValue`,则清空 |
|
||||
| setValue | `value: string` 更新的值 | 更新数据,开启`multiple`,多值用`,`分隔 |
|
||||
|
@ -278,12 +278,17 @@ Page 默认将页面分为几个区域,分别是**内容区(`body`)**、**
|
||||
| interval | `number` | `3000` | 刷新时间(最小 1000) |
|
||||
| silentPolling | `boolean` | `false` | 配置刷新时是否显示加载动画 |
|
||||
| stopAutoRefreshWhen | [表达式](../../docs/concepts/expression) | `""` | 通过表达式来配置停止刷新的条件 |
|
||||
| pullRefresh | `object` | `{disabled: true}` | 下拉刷新配置(仅用于移动端) |
|
||||
| pullRefresh | `object` | `{disabled: true}` | 下拉刷新配置(仅用于移动端) |
|
||||
|
||||
## 事件表
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| ----------- | ------ | ------------------------------------- |
|
||||
| pullRefresh | | 配置下拉刷新后下拉释放后触发(仅用于移动端) |
|
||||
|
||||
| 事件名称 | 事件参数 | 说明 |
|
||||
| ----------- | -------- | -------------------------------------------- |
|
||||
| pullRefresh | | 配置下拉刷新后下拉释放后触发(仅用于移动端) |
|
||||
|
||||
## 动作表
|
||||
无
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| -------- | -------------------------- | ---------------- |
|
||||
| reload | - | 刷新(重新加载) |
|
||||
| setValue | `value: object` 更新的数据 | 更新数据 |
|
||||
|
@ -109,10 +109,12 @@ order: 73
|
||||
|
||||
## 动作表
|
||||
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| ----------- | ----------------------- | -------- |
|
||||
| submit | - | 全部提交 |
|
||||
| step-submit | - | 分步提交 |
|
||||
| next | - | 下一步 |
|
||||
| prev | - | 上一步 |
|
||||
| goto-step | `step: number` 目标步骤 | 定位步骤 |
|
||||
| 动作名称 | 动作配置 | 说明 |
|
||||
| ----------- | -------------------------- | ---------------- |
|
||||
| submit | - | 全部提交 |
|
||||
| step-submit | - | 分步提交 |
|
||||
| next | - | 下一步 |
|
||||
| prev | - | 上一步 |
|
||||
| goto-step | `step: number` 目标步骤 | 定位步骤 |
|
||||
| reload | - | 刷新(重新加载) |
|
||||
| setValue | `value: object` 更新的数据 | 更新数据 |
|
||||
|
@ -91,7 +91,7 @@ order: 9
|
||||
|
||||
## 触发通用动作
|
||||
|
||||
通用动作包含发送 http 请求、跳转链接、打开/关闭弹窗、打开/关闭抽屉、打开对话框、弹出 Toast 提示、刷新、控制显示隐藏、控制启用禁用状态。
|
||||
通用动作包含发送 http 请求、跳转链接、浏览器回退、浏览器刷新、打开/关闭弹窗、打开/关闭抽屉、打开对话框、弹出 Toast 提示、复制、发送邮件、刷新、控制显示隐藏、控制启用禁用状态、更新数据。
|
||||
|
||||
### 发送 http 请求
|
||||
|
||||
@ -594,6 +594,7 @@ order: 9
|
||||
| actionType | `string` | `url` | 页面跳转 |
|
||||
| url / args.url`(>=v1.9.0)` | `string` | - | 按钮点击后,会打开指定页面。可用 `${xxx}` 取值。 |
|
||||
| blank / args.blank`(>=v1.9.0)` | `boolean` | `false` | 如果为 `true` 将在新 tab 页面打开。 |
|
||||
| args.params`(>=v1.9.0)` | `object` | - | 页面参数`{key:value}`,支持数据映射。 |
|
||||
|
||||
**打开单页链接**
|
||||
|
||||
@ -626,6 +627,7 @@ order: 9
|
||||
| ---------- | -------- | ------ | ------------------------------------------------------------------------------------------------------------------- |
|
||||
| actionType | `string` | `link` | 单页跳转 |
|
||||
| link / args.link`(>=v1.9.0)` | `string` | `link` | 用来指定跳转地址,跟 url 不同的是,这是单页跳转方式,不会渲染浏览器,请指定 amis 平台内的页面。可用 `${xxx}` 取值。 |
|
||||
| args.params`(>=v1.9.0)` | `object` | - | 页面参数`{key:value}`,支持数据映射。 |
|
||||
|
||||
### 浏览器回退
|
||||
|
||||
@ -1077,7 +1079,9 @@ order: 9
|
||||
|
||||
### 刷新
|
||||
|
||||
通过配置`actionType: 'reload'`实现对指定组件的刷新操作,限于`form`、`dialog`、`drawer`、`wizard`、`service`、`page`、`app`、`chart`、`crud`,以及选择类组件。
|
||||
通过配置`actionType: 'reload'`实现对指定组件的刷新(重新加载)操作,仅支持`form`、`dialog`、`drawer`、`wizard`、`service`、`page`、`app`、`chart`、`crud`,以及支持动态数据的`输入类`组件,详见组件动作表。
|
||||
|
||||
#### 刷新 表单
|
||||
|
||||
```schema
|
||||
{
|
||||
@ -1085,8 +1089,8 @@ order: 9
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '刷新(表单)',
|
||||
className: 'mr-2',
|
||||
label: '刷新',
|
||||
className: 'mb-2',
|
||||
level: 'primary',
|
||||
onEvent: {
|
||||
click: {
|
||||
@ -1099,9 +1103,89 @@ order: 9
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'form',
|
||||
id: 'form-reload',
|
||||
name: 'form-reload',
|
||||
initApi:
|
||||
'https://3xsw4ap8wah59.cfc-execute.bj.baidubce.com/api/amis-mock/mock2/page/initData',
|
||||
title: '表单',
|
||||
body: [
|
||||
{
|
||||
type: 'input-text',
|
||||
id: 'date-input-01',
|
||||
name: 'date',
|
||||
label: '时间戳'
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
#### 刷新 图表
|
||||
|
||||
```schema
|
||||
{
|
||||
type: 'page',
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '刷新(下拉框)',
|
||||
label: '刷新',
|
||||
level: 'primary',
|
||||
className: 'mb-2',
|
||||
onEvent: {
|
||||
click: {
|
||||
actions: [
|
||||
{
|
||||
actionType: 'reload',
|
||||
componentId: 'chart_reload'
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "chart",
|
||||
id: 'chart_reload',
|
||||
"api": "https://3xsw4ap8wah59.cfc-execute.bj.baidubce.com/api/amis-mock/mock2/chart/chartData",
|
||||
"config": {
|
||||
"xAxis": {
|
||||
"type": "category",
|
||||
"data": [
|
||||
"Mon",
|
||||
"Tue",
|
||||
"Wed",
|
||||
"Thu",
|
||||
"Fri",
|
||||
"Sat"
|
||||
]
|
||||
},
|
||||
"yAxis": {
|
||||
"type": "value"
|
||||
},
|
||||
"series": [
|
||||
{
|
||||
"data": "${line}",
|
||||
"type": "line"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
#### 刷新 下拉框
|
||||
|
||||
```schema
|
||||
{
|
||||
type: 'page',
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '刷新',
|
||||
className: 'mb-2',
|
||||
level: 'primary',
|
||||
onEvent: {
|
||||
click: {
|
||||
@ -1123,22 +1207,40 @@ order: 9
|
||||
name: 'select',
|
||||
source:
|
||||
'https://3xsw4ap8wah59.cfc-execute.bj.baidubce.com/api/amis-mock/mock2/form/getOptions?waitSeconds=1'
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
**刷新 输入框**
|
||||
|
||||
```schema
|
||||
{
|
||||
type: 'page',
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '刷新',
|
||||
className: 'mb-2',
|
||||
level: 'primary',
|
||||
onEvent: {
|
||||
click: {
|
||||
actions: [
|
||||
{
|
||||
actionType: 'reload',
|
||||
componentId: 'input-text-reload'
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'form',
|
||||
id: 'form-reload',
|
||||
name: 'form-reload',
|
||||
initApi:
|
||||
'https://3xsw4ap8wah59.cfc-execute.bj.baidubce.com/api/amis-mock/mock2/page/initData',
|
||||
title: '表单',
|
||||
body: [
|
||||
{
|
||||
type: 'input-text',
|
||||
id: 'date-input-01',
|
||||
name: 'date',
|
||||
label: '时间戳'
|
||||
}
|
||||
]
|
||||
"name": "input-text-reload",
|
||||
"id": "input-text-reload",
|
||||
"type": "input-text",
|
||||
"label": "text",
|
||||
"creatable": false,
|
||||
"source": "https://3xsw4ap8wah59.cfc-execute.bj.baidubce.com/api/amis-mock/mock2/form/getOptions?waitSeconds=1"
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -1211,7 +1313,7 @@ order: 9
|
||||
|
||||
### 控制状态
|
||||
|
||||
通过配置`actionType: 'enabled'`或`actionType: 'disabled'`实现对指定组件的启用和禁用,限于数据输入类组件。
|
||||
通过配置`actionType: 'enabled'`或`actionType: 'disabled'`实现对指定组件的启用和禁用,仅支持数据输入类组件。
|
||||
|
||||
```schema
|
||||
{
|
||||
@ -1312,7 +1414,7 @@ order: 9
|
||||
|
||||
### 更新数据
|
||||
|
||||
通过配置`actionType: 'setValue'`实现组件数据变量的更新,限于`form`、`dialog`、`drawer`、`wizard`、`service`、`page`、`app`、`chart`,以及数据输入类组件。
|
||||
更新数据即变量赋值,通过配置`actionType: 'setValue'`实现组件数据域变量的更新,支持`基础类型`、`对象类型`、`数组类型`,数据类型取决于目标组件所需数据值类型,仅支持`form`、`dialog`、`drawer`、`wizard`、`service`、`page`、`app`、`chart`,以及数据`输入类`组件。
|
||||
|
||||
#### 更新 表单 数据
|
||||
|
||||
@ -1543,9 +1645,74 @@ order: 9
|
||||
}
|
||||
```
|
||||
|
||||
#### 更新 图表 数据
|
||||
|
||||
直接更新图表的数据等于更新图表所依赖数据域中的变量,例如下面的例子,`setValue`等于更新绑定的变量`${line}`。
|
||||
|
||||
```schema
|
||||
{
|
||||
type: 'page',
|
||||
data: {
|
||||
lineData: {
|
||||
line: [65, 63, 10, 73, 42, 21]
|
||||
}
|
||||
},
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '更新',
|
||||
level: 'primary',
|
||||
className: 'mb-2',
|
||||
onEvent: {
|
||||
click: {
|
||||
actions: [
|
||||
{
|
||||
actionType: 'setValue',
|
||||
componentId: 'chart_setvalue',
|
||||
args: {
|
||||
value: '${lineData}'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "chart",
|
||||
id: 'chart_setvalue',
|
||||
"api": "https://3xsw4ap8wah59.cfc-execute.bj.baidubce.com/api/amis-mock/mock2/chart/chartData",
|
||||
"config": {
|
||||
"xAxis": {
|
||||
"type": "category",
|
||||
"data": [
|
||||
"Mon",
|
||||
"Tue",
|
||||
"Wed",
|
||||
"Thu",
|
||||
"Fri",
|
||||
"Sat"
|
||||
]
|
||||
},
|
||||
"yAxis": {
|
||||
"type": "value"
|
||||
},
|
||||
"series": [
|
||||
{
|
||||
"data": "${line}",
|
||||
"type": "line"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
#### 更新 输入类组件 数据
|
||||
|
||||
直接更新指定输入框、下拉框等输入类组件的数据。
|
||||
直接更新指定输入框、下拉框、输入组合等输入类组件的数据。
|
||||
|
||||
**更新 输入框 字段值**
|
||||
|
||||
```schema
|
||||
{
|
||||
@ -1561,7 +1728,7 @@ order: 9
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '更新',
|
||||
label: '更新输入框',
|
||||
level: 'primary',
|
||||
className: 'mr-2 mb-2',
|
||||
onEvent: {
|
||||
@ -1607,7 +1774,6 @@ order: 9
|
||||
{
|
||||
type: 'form',
|
||||
title: '表单',
|
||||
debug: true,
|
||||
data: {
|
||||
myrole: '杀手',
|
||||
age: '18'
|
||||
@ -1635,6 +1801,283 @@ order: 9
|
||||
}
|
||||
```
|
||||
|
||||
**更新 下拉框 选中值**
|
||||
|
||||
```schema
|
||||
{
|
||||
type: 'page',
|
||||
id: 'mypage',
|
||||
data: {
|
||||
singleData: 'a',
|
||||
multipleData: 'caocao,libai'
|
||||
},
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '更新单选数据',
|
||||
level: 'primary',
|
||||
className: 'mr-2 mb-2',
|
||||
onEvent: {
|
||||
click: {
|
||||
actions: [
|
||||
{
|
||||
actionType: 'setValue',
|
||||
componentId: 'single-select',
|
||||
args: {
|
||||
value: '${singleData}'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'button',
|
||||
label: '更新多选数据',
|
||||
level: 'primary',
|
||||
className: 'mb-2',
|
||||
onEvent: {
|
||||
click: {
|
||||
actions: [
|
||||
{
|
||||
actionType: 'setValue',
|
||||
componentId: 'multiple-select',
|
||||
args: {
|
||||
value: '${multipleData}'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"label": "选项",
|
||||
"type": "select",
|
||||
"name": "single-select",
|
||||
id: 'single-select',
|
||||
"options": [
|
||||
{
|
||||
"label": "A",
|
||||
"value": "a"
|
||||
},
|
||||
{
|
||||
"label": "B",
|
||||
"value": "b"
|
||||
},
|
||||
{
|
||||
"label": "C",
|
||||
"value": "c"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": "分组",
|
||||
"type": "select",
|
||||
"name": "multiple-select",
|
||||
id: 'multiple-select',
|
||||
"multiple": true,
|
||||
"selectMode": "group",
|
||||
"options": [
|
||||
{
|
||||
"label": "法师",
|
||||
"children": [
|
||||
{
|
||||
"label": "诸葛亮",
|
||||
"value": "zhugeliang"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": "战士",
|
||||
"children": [
|
||||
{
|
||||
"label": "曹操",
|
||||
"value": "caocao"
|
||||
},
|
||||
{
|
||||
"label": "钟无艳",
|
||||
"value": "zhongwuyan"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": "打野",
|
||||
"children": [
|
||||
{
|
||||
"label": "李白",
|
||||
"value": "libai"
|
||||
},
|
||||
{
|
||||
"label": "韩信",
|
||||
"value": "hanxin"
|
||||
},
|
||||
{
|
||||
"label": "云中君",
|
||||
"value": "yunzhongjun"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
**更新 点选按钮 选中值**
|
||||
|
||||
```schema
|
||||
{
|
||||
type: 'page',
|
||||
id: 'mypage',
|
||||
data: {
|
||||
btnData: 'c'
|
||||
},
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '更新',
|
||||
level: 'primary',
|
||||
className: 'mr-2 mb-2',
|
||||
onEvent: {
|
||||
click: {
|
||||
actions: [
|
||||
{
|
||||
actionType: 'setValue',
|
||||
componentId: 'button-group-select_setvalue',
|
||||
args: {
|
||||
value: '${btnData}'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "button-group-select",
|
||||
id: 'button-group-select_setvalue',
|
||||
"label": "选项",
|
||||
"name": "type",
|
||||
"options": [
|
||||
{
|
||||
"label": "Option A",
|
||||
"value": "a"
|
||||
},
|
||||
{
|
||||
"label": "Option B",
|
||||
"value": "b"
|
||||
},
|
||||
{
|
||||
"label": "Option C",
|
||||
"value": "c"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
**更新 输入组合(Combo) 字段值**
|
||||
|
||||
```schema
|
||||
{
|
||||
type: 'page',
|
||||
id: 'mypage',
|
||||
data: {
|
||||
objData: {
|
||||
name: '路飞',
|
||||
role: '海贼王'
|
||||
},
|
||||
arrayData: [
|
||||
{
|
||||
name: '苹果',
|
||||
count: 10
|
||||
},
|
||||
{
|
||||
name: '黄瓜',
|
||||
count: 5
|
||||
}
|
||||
]
|
||||
},
|
||||
body: [
|
||||
{
|
||||
type: 'button',
|
||||
label: '更新对象类型数据',
|
||||
level: 'primary',
|
||||
className: 'mr-2 mb-2',
|
||||
onEvent: {
|
||||
click: {
|
||||
actions: [
|
||||
{
|
||||
actionType: 'setValue',
|
||||
componentId: 'userinfo',
|
||||
args: {
|
||||
value: '${objData}'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
type: 'button',
|
||||
label: '更新数组类型数据',
|
||||
level: 'primary',
|
||||
className: 'mb-2',
|
||||
onEvent: {
|
||||
click: {
|
||||
actions: [
|
||||
{
|
||||
actionType: 'setValue',
|
||||
componentId: 'shoppingcart',
|
||||
args: {
|
||||
value: '${arrayData}'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "combo",
|
||||
"name": "userinfo",
|
||||
"id": "userinfo",
|
||||
"label": "用户信息",
|
||||
"items": [
|
||||
{
|
||||
"name": "name",
|
||||
"label": "姓名",
|
||||
"type": "input-text"
|
||||
},
|
||||
{
|
||||
"name": "role",
|
||||
"label": "角色",
|
||||
"type": "input-text"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "combo",
|
||||
"name": "shoppingcart",
|
||||
"id": "shoppingcart",
|
||||
"label": "购物车",
|
||||
"multiple": true,
|
||||
"items": [
|
||||
{
|
||||
"name": "name",
|
||||
"label": "商品名称",
|
||||
"type": "input-text"
|
||||
},
|
||||
{
|
||||
"name": "count",
|
||||
"label": "购买数量",
|
||||
"type": "input-text"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
#### 联动更新
|
||||
|
||||
当某组件的值发生变化时,联动去更新另一个组件的数据,可以通过`${事件参数}`来获取事件产生的数据,例如输入框`change`事件的参数是`value: string | string[]`d,则可以通过`${event.data.value}`来获取输入的值。
|
||||
@ -1687,7 +2130,6 @@ order: 9
|
||||
type: 'form',
|
||||
id: 'form_data_2',
|
||||
title: '表单',
|
||||
debug: true,
|
||||
"initApi": "/api/mock2/form/initData",
|
||||
body: [
|
||||
{
|
||||
@ -1768,7 +2210,6 @@ order: 9
|
||||
type: 'form',
|
||||
id: 'form_data_3',
|
||||
title: '表单',
|
||||
debug: true,
|
||||
body: [
|
||||
{
|
||||
type: 'input-text',
|
||||
|
@ -497,6 +497,9 @@ export class ChartRenderer extends Chart {
|
||||
}
|
||||
|
||||
setData(values: object) {
|
||||
return this.props.store.updateData(values);
|
||||
const {store} = this.props;
|
||||
store.updateData(values);
|
||||
// 重新渲染
|
||||
this.renderChart(this.props.config, values);
|
||||
}
|
||||
}
|
||||
|
@ -52,7 +52,9 @@ export default class ButtonGroupControl extends React.Component<
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
@ -86,7 +86,9 @@ export default class ChainedSelectControl extends React.Component<
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
@ -95,12 +97,14 @@ export default class ChainedSelectControl extends React.Component<
|
||||
const {delimiter, joinValues, extractValue} = this.props;
|
||||
// 判断arr的项是否已抽取
|
||||
return isExtracted
|
||||
? (joinValues ? arr.join(delimiter || ',') : arr)
|
||||
: (joinValues
|
||||
? joinValues
|
||||
? arr.join(delimiter || ',')
|
||||
: extractValue
|
||||
? arr.map(item => item.value || item)
|
||||
: arr)
|
||||
: arr
|
||||
: joinValues
|
||||
? arr.join(delimiter || ',')
|
||||
: extractValue
|
||||
? arr.map(item => item.value || item)
|
||||
: arr;
|
||||
}
|
||||
|
||||
loadMore() {
|
||||
@ -158,7 +162,7 @@ export default class ChainedSelectControl extends React.Component<
|
||||
parentId,
|
||||
parent: arr[idx]
|
||||
})
|
||||
.then(async (ret) => {
|
||||
.then(async ret => {
|
||||
// todo 没有检测 response.ok
|
||||
|
||||
const stack = this.state.stack.concat();
|
||||
@ -179,7 +183,7 @@ export default class ChainedSelectControl extends React.Component<
|
||||
value: valueRes
|
||||
})
|
||||
);
|
||||
|
||||
|
||||
if (rendererEvent?.prevented) {
|
||||
return;
|
||||
}
|
||||
@ -209,7 +213,15 @@ export default class ChainedSelectControl extends React.Component<
|
||||
}
|
||||
|
||||
async handleChange(index: number, currentValue: any) {
|
||||
const {value, delimiter, onChange, joinValues, extractValue, dispatchEvent, data} = this.props;
|
||||
const {
|
||||
value,
|
||||
delimiter,
|
||||
onChange,
|
||||
joinValues,
|
||||
extractValue,
|
||||
dispatchEvent,
|
||||
data
|
||||
} = this.props;
|
||||
|
||||
const arr = Array.isArray(value)
|
||||
? value.concat()
|
||||
@ -220,14 +232,14 @@ export default class ChainedSelectControl extends React.Component<
|
||||
arr.push(joinValues ? currentValue.value : currentValue);
|
||||
|
||||
const valueRes = this.array2value(arr);
|
||||
|
||||
|
||||
const rendererEvent = await dispatchEvent(
|
||||
'change',
|
||||
createObject(data, {
|
||||
value: valueRes
|
||||
})
|
||||
);
|
||||
|
||||
|
||||
if (rendererEvent?.prevented) {
|
||||
return;
|
||||
}
|
||||
|
@ -60,7 +60,9 @@ export default class CheckboxControl extends React.Component<
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
@ -76,7 +76,10 @@ export default class CheckboxesControl extends React.Component<
|
||||
doAction(action: Action, data: object, throwErrors: boolean) {
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
@ -33,6 +33,7 @@ import {
|
||||
SchemaObject,
|
||||
SchemaTpl
|
||||
} from '../../Schema';
|
||||
import {ListenerAction} from '../../actions/Action';
|
||||
|
||||
export type ComboCondition = {
|
||||
test: string;
|
||||
@ -433,6 +434,17 @@ export default class ComboControl extends React.Component<ComboProps> {
|
||||
this.makeFormRef.cache.clear?.();
|
||||
}
|
||||
|
||||
doAction(action: ListenerAction, args: any) {
|
||||
const actionType = action?.actionType as string;
|
||||
const {onChange, resetValue} = this.props;
|
||||
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
getValueAsArray(props = this.props) {
|
||||
const {flat, joinValues, delimiter, type} = props;
|
||||
let value = props.value;
|
||||
|
@ -114,8 +114,13 @@ export class DiffEditor extends React.Component<DiffEditorProps, any> {
|
||||
|
||||
doAction(action: ListenerAction, args: any) {
|
||||
const actionType = action?.actionType as string;
|
||||
const {onChange, resetValue} = this.props;
|
||||
|
||||
if (actionType === 'focus') {
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
} else if (actionType === 'focus') {
|
||||
this.focus();
|
||||
}
|
||||
}
|
||||
|
@ -161,8 +161,13 @@ export default class EditorControl extends React.Component<EditorProps, any> {
|
||||
|
||||
doAction(action: ListenerAction, args: any) {
|
||||
const actionType = action?.actionType as string;
|
||||
const {onChange, resetValue} = this.props;
|
||||
|
||||
if (actionType === 'focus') {
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
} else if (actionType === 'focus') {
|
||||
this.focus();
|
||||
}
|
||||
}
|
||||
|
@ -466,7 +466,9 @@ export class LocationControl extends React.Component<LocationControlProps> {
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
@ -166,9 +166,13 @@ export default class ExcelControl extends React.PureComponent<
|
||||
}
|
||||
|
||||
doAction(action: any, data: object, throwErrors: boolean) {
|
||||
const {onChange} = this.props;
|
||||
if (action.actionType === 'clear') {
|
||||
const actionType = action?.actionType as string;
|
||||
const {onChange, resetValue} = this.props;
|
||||
|
||||
if (actionType === 'clear') {
|
||||
onChange('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -144,8 +144,12 @@ export default class NumberControl extends React.Component<
|
||||
doAction(action: Action, args: any) {
|
||||
const actionType = action?.actionType as string;
|
||||
const {resetValue, onChange} = this.props;
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
this.handleChange(resetValue ?? '');
|
||||
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
const value = this.getValue(resetValue ?? '');
|
||||
onChange?.(value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -176,22 +180,8 @@ export default class NumberControl extends React.Component<
|
||||
return undefined;
|
||||
}
|
||||
|
||||
// 派发有event的事件
|
||||
@autobind
|
||||
dispatchEvent(e: React.SyntheticEvent<HTMLElement>) {
|
||||
const {dispatchEvent, data} = this.props;
|
||||
dispatchEvent(e, data);
|
||||
}
|
||||
|
||||
async handleChange(inputValue: any) {
|
||||
const {
|
||||
classPrefix: ns,
|
||||
onChange,
|
||||
resetValue,
|
||||
unitOptions,
|
||||
data,
|
||||
dispatchEvent
|
||||
} = this.props;
|
||||
getValue(inputValue: any) {
|
||||
const {resetValue, unitOptions} = this.props;
|
||||
|
||||
if (inputValue && typeof inputValue !== 'number') {
|
||||
return;
|
||||
@ -200,7 +190,20 @@ export default class NumberControl extends React.Component<
|
||||
if (inputValue !== null && unitOptions && this.state.unit) {
|
||||
inputValue = inputValue + this.state.unit;
|
||||
}
|
||||
const value = inputValue === null ? resetValue ?? null : inputValue;
|
||||
return inputValue === null ? resetValue ?? null : inputValue;
|
||||
}
|
||||
|
||||
// 派发有event的事件
|
||||
@autobind
|
||||
dispatchEvent(e: React.SyntheticEvent<HTMLElement>) {
|
||||
const {dispatchEvent, data} = this.props;
|
||||
dispatchEvent(e, data);
|
||||
}
|
||||
|
||||
async handleChange(inputValue: any) {
|
||||
const {onChange, data, dispatchEvent} = this.props;
|
||||
const value = this.getValue(inputValue);
|
||||
|
||||
const rendererEvent = await dispatchEvent(
|
||||
'change',
|
||||
createObject(data, {
|
||||
|
@ -104,7 +104,8 @@ export interface RangeControlSchema extends FormBaseControl {
|
||||
}
|
||||
|
||||
type MarksType = {
|
||||
[index: number | string]: MarksValue;
|
||||
[index: string]: MarksValue;
|
||||
[index: number]: MarksValue;
|
||||
};
|
||||
|
||||
type MarksValue = Record<
|
||||
@ -488,19 +489,28 @@ export default class RangeControl extends React.PureComponent<
|
||||
}
|
||||
|
||||
doAction(action: Action, data: object, throwErrors: boolean) {
|
||||
if (action.actionType === 'clear') {
|
||||
this.clearValue();
|
||||
const actionType = action?.actionType as string;
|
||||
const {multiple, min, max} = this.props;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
this.clearValue(actionType);
|
||||
}
|
||||
}
|
||||
|
||||
@autobind
|
||||
clearValue() {
|
||||
const {multiple, min, max} = this.props;
|
||||
if (multiple) {
|
||||
this.updateValue({min, max});
|
||||
} else {
|
||||
this.updateValue(min);
|
||||
clearValue(type: string = 'clear') {
|
||||
const {multiple, min, max, onChange} = this.props;
|
||||
let resetValue = this.props.resetValue;
|
||||
|
||||
if (type === 'clear') {
|
||||
resetValue = undefined;
|
||||
}
|
||||
|
||||
const value = this.getFormatValue(
|
||||
resetValue ?? (multiple ? {min, max} : min)
|
||||
);
|
||||
|
||||
onChange?.(value);
|
||||
}
|
||||
|
||||
@autobind
|
||||
@ -535,7 +545,7 @@ export default class RangeControl extends React.PureComponent<
|
||||
return;
|
||||
}
|
||||
|
||||
onChange && onChange(result);
|
||||
onChange?.(result);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -595,7 +605,7 @@ export default class RangeControl extends React.PureComponent<
|
||||
// 处理自定义json配置
|
||||
let renderMarks:
|
||||
| MarksType
|
||||
| {[index: number | string]: ReactNode}
|
||||
| {[index: string]: ReactNode; [index: number]: ReactNode}
|
||||
| undefined = marks ? {...marks} : marks;
|
||||
marks &&
|
||||
forEach(marks, (item, key) => {
|
||||
|
@ -87,9 +87,13 @@ export default class RatingControl extends React.Component<RatingProps, any> {
|
||||
};
|
||||
|
||||
doAction(action: Action, data: object, throwErrors: boolean) {
|
||||
const {resetValue} = this.props;
|
||||
if (action.actionType && ['clear', 'reset'].includes(action.actionType)) {
|
||||
this.handleChange(resetValue ?? '');
|
||||
const actionType = action?.actionType as string;
|
||||
const {onChange, resetValue} = this.props;
|
||||
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange?.(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
@ -97,15 +101,18 @@ export default class RatingControl extends React.Component<RatingProps, any> {
|
||||
async handleChange(value: any) {
|
||||
const {onChange, dispatchEvent, data} = this.props;
|
||||
|
||||
const rendererEvent = await dispatchEvent('change', createObject(data, {
|
||||
value
|
||||
}));
|
||||
const rendererEvent = await dispatchEvent(
|
||||
'change',
|
||||
createObject(data, {
|
||||
value
|
||||
})
|
||||
);
|
||||
|
||||
if (rendererEvent?.prevented) {
|
||||
return;
|
||||
}
|
||||
|
||||
onChange && onChange(value);
|
||||
|
||||
onChange?.(value);
|
||||
}
|
||||
|
||||
render() {
|
||||
|
@ -85,8 +85,10 @@ export default class TagControl extends React.PureComponent<
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
onChange(resetValue ?? '');
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange?.(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
@ -106,13 +108,8 @@ export default class TagControl extends React.PureComponent<
|
||||
|
||||
@autobind
|
||||
getValue(type: 'push' | 'pop' | 'normal' = 'normal', option: any = {}) {
|
||||
const {
|
||||
selectedOptions,
|
||||
joinValues,
|
||||
extractValue,
|
||||
delimiter,
|
||||
valueField
|
||||
} = this.props;
|
||||
const {selectedOptions, joinValues, extractValue, delimiter, valueField} =
|
||||
this.props;
|
||||
|
||||
const newValue = selectedOptions.concat();
|
||||
if (type === 'push') {
|
||||
@ -122,9 +119,7 @@ export default class TagControl extends React.PureComponent<
|
||||
}
|
||||
|
||||
const newValueRes = joinValues
|
||||
? newValue
|
||||
.map(item => item[valueField || 'value'])
|
||||
.join(delimiter || ',')
|
||||
? newValue.map(item => item[valueField || 'value']).join(delimiter || ',')
|
||||
: extractValue
|
||||
? newValue.map(item => item[valueField || 'value'])
|
||||
: newValue;
|
||||
@ -132,10 +127,7 @@ export default class TagControl extends React.PureComponent<
|
||||
}
|
||||
|
||||
async addItem(option: Option) {
|
||||
const {
|
||||
selectedOptions,
|
||||
onChange
|
||||
} = this.props;
|
||||
const {selectedOptions, onChange} = this.props;
|
||||
const newValue = selectedOptions.concat();
|
||||
|
||||
if (find(newValue, item => item.value == option.value)) {
|
||||
@ -255,11 +247,7 @@ export default class TagControl extends React.PureComponent<
|
||||
|
||||
@autobind
|
||||
async handleKeyDown(evt: React.KeyboardEvent<HTMLInputElement>) {
|
||||
const {
|
||||
selectedOptions,
|
||||
onChange,
|
||||
delimiter
|
||||
} = this.props;
|
||||
const {selectedOptions, onChange, delimiter} = this.props;
|
||||
|
||||
const value = this.state.inputValue.trim();
|
||||
|
||||
|
@ -117,14 +117,16 @@ export default class TreeControl extends React.Component<TreeProps> {
|
||||
}
|
||||
|
||||
doAction(action: Action, data: any, throwErrors: boolean) {
|
||||
const {resetValue, onChange, options} = this.props;
|
||||
if (action.actionType && ['clear', 'reset'].includes(action.actionType)) {
|
||||
onChange && onChange(resetValue ?? '');
|
||||
}
|
||||
if (action.actionType === 'expand') {
|
||||
const actionType = action?.actionType as string;
|
||||
const {resetValue, onChange} = this.props;
|
||||
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange?.(resetValue ?? '');
|
||||
} else if (action.actionType === 'expand') {
|
||||
this.treeRef.syncUnFolded(this.props, action.args.openLevel);
|
||||
}
|
||||
if (action.actionType === 'collapse') {
|
||||
} else if (action.actionType === 'collapse') {
|
||||
this.treeRef.syncUnFolded(this.props, 0);
|
||||
}
|
||||
}
|
||||
|
@ -61,8 +61,11 @@ export default class ListControl extends React.Component<ListProps, any> {
|
||||
doAction(action: Action, data: object, throwErrors: boolean) {
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
onChange(resetValue ?? '');
|
||||
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange?.(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -151,8 +151,10 @@ export default class MatrixCheckbox extends React.Component<
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
onChange(resetValue ?? '');
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange?.(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
@ -271,9 +273,10 @@ export default class MatrixCheckbox extends React.Component<
|
||||
}
|
||||
}
|
||||
|
||||
const rendererEvent = await dispatchEvent('change',
|
||||
const rendererEvent = await dispatchEvent(
|
||||
'change',
|
||||
createObject(data, {
|
||||
value: value.concat(),
|
||||
value: value.concat()
|
||||
})
|
||||
);
|
||||
if (rendererEvent?.prevented) {
|
||||
|
@ -129,8 +129,10 @@ export default class NestedSelectControl extends React.Component<
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
onChange(resetValue ?? '');
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange?.(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -471,9 +471,11 @@ export function registerOptionsControl(config: OptionsConfig) {
|
||||
doAction(action: Action, data: object, throwErrors: boolean) {
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
debugger;
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
onChange(resetValue ?? '');
|
||||
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange?.(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -41,23 +41,34 @@ export default class RadiosControl extends React.Component<RadiosProps, any> {
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
onChange(resetValue ?? '');
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
onChange?.(resetValue ?? '');
|
||||
}
|
||||
}
|
||||
|
||||
@autobind
|
||||
async handleChange(option: Option) {
|
||||
const {joinValues, extractValue, valueField, onChange, dispatchEvent, options, data} = this.props;
|
||||
const {
|
||||
joinValues,
|
||||
extractValue,
|
||||
valueField,
|
||||
onChange,
|
||||
dispatchEvent,
|
||||
options,
|
||||
data
|
||||
} = this.props;
|
||||
|
||||
if (option && (joinValues || extractValue)) {
|
||||
option = option[valueField || 'value'];
|
||||
}
|
||||
|
||||
const rendererEvent = await dispatchEvent('change',
|
||||
const rendererEvent = await dispatchEvent(
|
||||
'change',
|
||||
createObject(data, {
|
||||
value: option,
|
||||
options,
|
||||
options
|
||||
})
|
||||
);
|
||||
if (rendererEvent?.prevented) {
|
||||
|
@ -151,38 +151,9 @@ export default class SelectControl extends React.Component<SelectProps, any> {
|
||||
this.input && this.input.focus();
|
||||
}
|
||||
|
||||
async dispatchEvent(eventName: SelectRendererEvent, eventData: any = {}) {
|
||||
const event = 'on' + eventName.charAt(0).toUpperCase() + eventName.slice(1);
|
||||
const {dispatchEvent, options, data} = this.props;
|
||||
// 触发渲染器事件
|
||||
const rendererEvent = await dispatchEvent(
|
||||
eventName,
|
||||
createObject(data, {
|
||||
options,
|
||||
...eventData
|
||||
})
|
||||
);
|
||||
if (rendererEvent?.prevented) {
|
||||
return;
|
||||
}
|
||||
this.props[event](eventData);
|
||||
}
|
||||
|
||||
async changeValue(value: Option | Array<Option> | string | void) {
|
||||
const {
|
||||
joinValues,
|
||||
extractValue,
|
||||
delimiter,
|
||||
multiple,
|
||||
type,
|
||||
valueField,
|
||||
onChange,
|
||||
setOptions,
|
||||
options,
|
||||
data,
|
||||
dispatchEvent
|
||||
} = this.props;
|
||||
|
||||
getValue(value: Option | Array<Option> | string | void) {
|
||||
const {joinValues, extractValue, delimiter, multiple, valueField, options} =
|
||||
this.props;
|
||||
let newValue: string | Option | Array<Option> | void = value;
|
||||
let additonalOptions: Array<any> = [];
|
||||
|
||||
@ -221,6 +192,31 @@ export default class SelectControl extends React.Component<SelectProps, any> {
|
||||
}
|
||||
}
|
||||
|
||||
return newValue;
|
||||
}
|
||||
|
||||
async dispatchEvent(eventName: SelectRendererEvent, eventData: any = {}) {
|
||||
const event = 'on' + eventName.charAt(0).toUpperCase() + eventName.slice(1);
|
||||
const {dispatchEvent, options, data} = this.props;
|
||||
// 触发渲染器事件
|
||||
const rendererEvent = await dispatchEvent(
|
||||
eventName,
|
||||
createObject(data, {
|
||||
options,
|
||||
...eventData
|
||||
})
|
||||
);
|
||||
if (rendererEvent?.prevented) {
|
||||
return;
|
||||
}
|
||||
this.props[event](eventData);
|
||||
}
|
||||
|
||||
async changeValue(value: Option | Array<Option> | string | void) {
|
||||
const {onChange, setOptions, options, data, dispatchEvent} = this.props;
|
||||
|
||||
let newValue: string | Option | Array<Option> | void = this.getValue(value);
|
||||
let additonalOptions: Array<any> = [];
|
||||
// 不设置没法回显
|
||||
additonalOptions.length && setOptions(options.concat(additonalOptions));
|
||||
|
||||
@ -235,7 +231,7 @@ export default class SelectControl extends React.Component<SelectProps, any> {
|
||||
return;
|
||||
}
|
||||
|
||||
onChange(newValue);
|
||||
onChange?.(newValue);
|
||||
}
|
||||
|
||||
async loadRemote(input: string) {
|
||||
@ -336,11 +332,14 @@ export default class SelectControl extends React.Component<SelectProps, any> {
|
||||
}
|
||||
|
||||
doAction(action: Action, data: object, throwErrors: boolean): any {
|
||||
const {resetValue} = this.props;
|
||||
const {resetValue, onChange} = this.props;
|
||||
const actionType = action?.actionType as string;
|
||||
|
||||
if (!!~['clear', 'reset'].indexOf(actionType)) {
|
||||
this.changeValue(resetValue ?? '');
|
||||
if (actionType === 'clear') {
|
||||
onChange?.('');
|
||||
} else if (actionType === 'reset') {
|
||||
const value = this.getValue(resetValue ?? '');
|
||||
onChange?.(value);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -254,10 +254,10 @@ export class TabsTransferRenderer extends BaseTabsTransferRenderer<TabsTransferP
|
||||
const activeKey = args?.activeKey as number;
|
||||
switch (action.actionType) {
|
||||
case 'clear':
|
||||
onChange('');
|
||||
onChange?.('');
|
||||
break;
|
||||
case 'reset':
|
||||
onChange(resetValue);
|
||||
onChange?.(resetValue ?? '');
|
||||
break;
|
||||
case 'changeTabKey':
|
||||
this.setState({
|
||||
|
@ -30,17 +30,16 @@ export interface TabsTransferProps
|
||||
> {}
|
||||
|
||||
interface BaseTransferState {
|
||||
activeKey: number
|
||||
activeKey: number;
|
||||
}
|
||||
|
||||
@OptionsControl({
|
||||
type: 'tabs-transfer-picker'
|
||||
})
|
||||
export class TabsTransferPickerRenderer extends BaseTabsTransferRenderer<TabsTransferProps> {
|
||||
|
||||
state: BaseTransferState = {
|
||||
activeKey: 0
|
||||
}
|
||||
};
|
||||
|
||||
@autobind
|
||||
optionItemRender(option: any, states: ItemRenderStates) {
|
||||
@ -62,16 +61,15 @@ export class TabsTransferPickerRenderer extends BaseTabsTransferRenderer<TabsTra
|
||||
return BaseSelection.itemRender(option, states);
|
||||
}
|
||||
|
||||
|
||||
// 动作
|
||||
doAction(action: Action) {
|
||||
const {resetValue, onChange} = this.props;
|
||||
switch (action.actionType) {
|
||||
case 'clear':
|
||||
onChange('');
|
||||
onChange?.('');
|
||||
break;
|
||||
case 'reset':
|
||||
onChange(resetValue);
|
||||
onChange?.(resetValue ?? '');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -339,10 +339,10 @@ export class BaseTransferRenderer<
|
||||
const {resetValue, onChange} = this.props;
|
||||
switch (action.actionType) {
|
||||
case 'clear':
|
||||
onChange('');
|
||||
onChange?.('');
|
||||
break;
|
||||
case 'reset':
|
||||
onChange(resetValue);
|
||||
onChange?.(resetValue ?? '');
|
||||
break;
|
||||
case 'selectAll':
|
||||
this.tranferRef?.selectAll();
|
||||
|
@ -45,7 +45,6 @@ export interface TabsTransferProps
|
||||
type: 'transfer-picker'
|
||||
})
|
||||
export class TransferPickerRenderer extends BaseTransferRenderer<TabsTransferProps> {
|
||||
|
||||
@autobind
|
||||
dispatchEvent(name: string) {
|
||||
const {dispatchEvent, data} = this.props;
|
||||
@ -57,10 +56,10 @@ export class TransferPickerRenderer extends BaseTransferRenderer<TabsTransferPro
|
||||
const {resetValue, onChange} = this.props;
|
||||
switch (action.actionType) {
|
||||
case 'clear':
|
||||
onChange('');
|
||||
onChange?.('');
|
||||
break;
|
||||
case 'reset':
|
||||
onChange(resetValue);
|
||||
onChange?.(resetValue ?? '');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user