交互接口:组件事件
Methods
(static) xtChecked($keySet, reference, configuration) → {Array}
「标准」Ux.xtChecked
该函数主要用于<Select/>
多选和<Tree/>
的onSelect中,通过配置实现多种模式的选择。
- 替换模式:直接使用键值集合替换原始选择。
- 合并模式:执行Save操作选择追加和替换两种。
Parameters:
Name | Type | Description |
---|---|---|
$keySet |
Set | Array | 已经选择的主键集合 |
reference |
Object | ReactComponent | React组件引用 |
configuration |
Object | 传入的 config |
Returns:
返回最终选择键值集合
- Type
- Array
(static) xtExprFlat(value) → {Array}
「标准」Ux.xtExprFlat
Object转换成Array专用,如传入:
{
"field": "expr1",
"field": "expr2"
}
构造带expression表达式的配置数据信息。
Parameters:
Name | Type | Description |
---|---|---|
value |
Object | 传入Object数据 |
Returns:
执行完成后的数组
- Type
- Array
(static) xtFormat(internal, format) → {any}
「标准」Ux.xtFormat
TableEditor等专用格式方法,可支持多种不同格式。
Parameters:
Name | Type | Description |
---|---|---|
internal |
Array | 二维数据 |
format |
Object | 格式配置数据 |
Returns:
返回初始化后的数据
- Type
- any
(static) xtGet(reference, field) → {Object}
「标准」Ux.xtGet
广义读取当前组件消费的数据信息,外层表单中会用props.value传入设置的值。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
field |
String | 读取字段的数据(只适用于OBJECT类型)。 |
Returns:
返回最终状态信息。
- Type
- Object
(static) xtInitArray(props, empty) → {Array}
「标准」Ux.xtInitArray
- 如果属性 props 中存在
value
变量- value本身是一个 Array,直接使用该 Array 初始化(步骤2)。
- value本身是一个 Object,则使用
value.data
执行初始化(步骤2)。
- 如果属性 props 中不存在
value
变量。- 如果允许空数组,则使用
{data:[]}
。 - 如果不允许空数组,则使用
{data:[{key:"uuid"}]}
。
- 如果允许空数组,则使用
返回结构:
{
"empty模式": {
data: []
},
"非empty模式": {
data: [
{
key: "ef78bf10-4db7-49d1-910d-96bc7eaad3c3"
}
]
}
}
Parameters:
Name | Type | Default | Description |
---|---|---|---|
props |
Object | React属性信息。 |
|
empty |
boolean |
false
|
是否使用空数组作为初始值。 |
Returns:
- Type
- Array
(static) xtInitArrayMap(props, empty) → {Object}
「标准」Ux.xtInitArrayMap
(略),直接将Array类型转换成Map类型(Object),字段值为Object的键值。
Parameters:
Name | Type | Default | Description |
---|---|---|---|
props |
Object | React属性信息。 |
|
empty |
boolean |
false
|
是否使用空数组作为初始值。 |
Returns:
- Type
- Object
(static) xtInitFormat(props) → {Object}
「标准」Ux.xtInitFormat
双格式处理
{
"Array直接格式":[],
"Json格式":{}
}
Parameters:
Name | Type | Description |
---|---|---|
props |
Object | React属性信息 |
Returns:
- Type
- Object
(static) xtInitObject(props) → {Object}
「标准」Ux.xtInitObject
- 如果属性 props 中存在
value
变量,则返回该值。 - 如果属性 props 中不存在
value
变量,则返回{}
。
Parameters:
Name | Type | Description |
---|---|---|
props |
Object | React属性信息。 |
Returns:
返回初始值。
- Type
- Object
(static) xtLazyAjax(reference, config) → {Object}
「标准」Ux.xtLazyAjax
根据 config 中的 ajax 配置,来执行参数解析,主要用于可执行 Ajax的延迟请求控件,如:
- ListSelector
- AddressSelector
- TreeSelector
上述控件都是复杂的自定义控件,必须解析 ajax 配置执行延迟远程调用。
1. 配置解析流程
config的ajax包含了远程处理的配置信息,分成两种读取数据的模式:
- Qr模式:启用查询引擎:
ajax.params.criteria
- 非Qr模式:直接查询数据:
ajax.magic
2. 执行输入解析
调用Ux.parseInput
方法解析每个参数的参数来源信息,最终生成不同来源下的数据构造请求参数。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
config |
Object | Ajax配置专用配置信息。 |
Returns:
返回参数信息。
- Type
- Object
(static) xtLazyInit(reference, configuration)
「标准」Ux.xtLazyInit
延迟初始化,统一处理,在 componentDidMount
中调用。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
configuration |
Object | 传入的 config 节点 |
(static) xtLazyUp(reference, virtualRef, configuration)
「标准」Ux.xtLazyUp
延迟初始化,统一处理,在 componentDidUpdate
中调用。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
virtualRef |
Object | 包含了 |
configuration |
Object | 传入的 config 节点 |
(static) xtReady(reference, render, LOG) → {JSX.Element}
「标准」Ux.xtReady
由于 Zero 框架无法调用 Extension 中的yoRender
,所以可直接使用xtReady
实现和 yoRender
中
同样的逻辑
- 检查配置是否准备完成,如果准备完成:
$ready = true
,否则为false。 - 准备没有完成时,则不渲染。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
render |
function | 执行 render 的函数。 |
LOG |
Object | 日志配置。 |
Returns:
直接渲染。
- Type
- JSX.Element
(static) xtRender(reference, render) → {Jsx|boolean}
「标准」Ux.xtRender
检查系统状态内部是否存在error
节点,如果存在error
节点,则直接渲染错误信息,配置出错的统一调用流程。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
render |
function | 执行 render 的函数。 |
Returns:
直接渲染。
- Type
- Jsx | boolean
(static) xtReset(reference, virtualRef, callback)
「标准」Ux.xtReset
重置专用函数,内部关联 Ant Design 的 Form信息。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
virtualRef |
Object | 带有state和props的前一次状态信息。 |
callback |
function | 回调函数处理。 |
(static) xtRevert(reference, virtualRef, callback)
「标准」Ux.xtRevert
自定义组件的新重置处理,用于设置表单的重置相关信息
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
virtualRef |
Object | 带有state和props的前一次状态信息。 |
callback |
function | 回调函数处理。 |
(static) xtRowAdd(reference, record, index) → {function}
「标准」Ux.xtRowAdd
表格中的添加行函数(二维表结构)
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用 |
record |
Object | 记录专用数据 |
index |
Number | 记录索引 |
Returns:
行添加事件函数
- Type
- function
(static) xtRowChange(reference, rowKey, field) → {function}
「标准」Ux.xtRowChange
构造当前行的onChange
专用函数,该API应用于column的render注入事件流程,可实现行数据变动操作,支持多字段数据。
- 先使用二义性
ambEvent
读取数据信息。 - 再触发上层的
onChange
方法,自定义组件中的上层方法会直接被Ant Design注入。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件应用 |
rowKey |
String | 行记录主键 |
field |
String | 被操作的字段 |
Returns:
返回事件函数
- Type
- function
(static) xtRowDel(reference, record, index) → {function}
「标准」Ux.xtRowDel
表格中的删除行函数(二维表结构)
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用 |
record |
Object | 记录专用数据 |
index |
Number | 记录索引 |
Returns:
行删除事件函数
- Type
- function
(static) xtSet(reference, name, value) → {Object}
「标准」Ux.xtSet
(略)
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
name |
Array | 读取字段的数据(只适用于OBJECT类型)。 |
value |
any | 设置的任何值。 |
Returns:
返回最终状态信息。
- Type
- Object
(static) xtTransfer(reference, callback) → {function}
「标准」Ux.xtTransfer
Parameters:
Name | Type | Description |
---|---|---|
reference |
||
callback |
Returns:
- Type
- function
(static) xtUnsafe(reference, nextProps)
- Deprecated:
- Yes
「标准」Ux.xtUnsafe
新版中的UNSAFE_componentWillReceiveProps(nextProps,context)
的内部调用,虽然不提倡使用,
但在自定义组件中,该函数依然会控制内部状态变更,所以依旧采用该方法。
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
nextProps |
Object | 下一个属性。 |
(static) xtUploadHandler(reference, metadata) → {Object}
「标准」Ux.xtUploadHandler
构造上传组件专用方法(handler对象)。
- beforeUpload,上传之前的处理方法
- onChange,变更专用方法
- onPreview,预览专用方法
- customRequest,自定义上传方法
Parameters:
Name | Type | Description |
---|---|---|
reference |
Object | React对应组件引用。 |
metadata |
Object | 当前组中数组,本身为一棵树 |
Returns:
FileUpload组件专用。
- Type
- Object
(static) xtUploadInit(reference, ajax, callback)
「标准」Ux.xtUploadInit
Parameters:
Name | Type | Description |
---|---|---|
reference |
||
ajax |
||
callback |
(static) xtUploadMime(value) → {*}
「标准」Ux.xtUploadMime
Parameters:
Name | Type | Description |
---|---|---|
value |
Returns:
- Type
- *