Zero:快速开发
Methods
(static) sexBatch(reference, callback, config)
「引擎」Ux.sexBatch
批量专用函数,用于处理批量按钮的特殊配置提取(同时从 props 属性和 state 状态中提取数据),内部调用代码如:
// 专用的批量处理按钮设置器。
const rxBatchEdit = (reference) => (params = []) => Ux.sexBatch(reference, ($selected = []) => {
const {options = {}} = reference.state;
const uri = options[G.Opt.AJAX_BATCH_UPDATE_URI];
return Ux.ajaxPut(uri, params);
}, {name: "rxBatchEdit", reset: true, message: G.Opt.MESSAGE_BATCH_UPDATE});
Parameters:
| Name | Type | Description |
|---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
callback |
function | 回调函数处理。 |
config |
Object | 传入的配置数据。 |
(static) sexCab(reference, key) → {any}
##「引擎」Ux.sexCab
配置增强读取的多义性函数。
- 如果 key 传入为 undefined,则直接从
props中读取config变量,默认:{}。 - 如果 key 是字符串不带
.操作符,则直接读取资源文件中的_<key,内部调用fromHoc(高频方式)。 - 如果 key 是字符串带
.操作符,则直接将该值如:key.xt转换成["key","xt"],对应_key -> xt节点。 - 如果 key 是Array,则执行
fromPath方法。
该方法保证最终得到的值是合法的。
Parameters:
| Name | Type | Description |
|---|---|---|
reference |
Object | ReactComponent | React组件引用 |
key |
String | 将要读取的配置的 key 值信息 |
Returns:
返回读取到的最终信息
- Type
- any
(static) sexDialog(reference, key, callback)
「引擎」Ux.sexDialog
弹出窗口专用函数,高频使用,直接捕捉窗口对象,内部使用代码如:
return Ux.ajaxPost(`/api/relation/definition`, request)
// 响应处理
.then(() => Ux.sexDialog(reference, "submitted",
// 设置最终的提交为 false
() => reference.setState({$submitting: false})))
窗口专用配置结构如下,该函数第二参数传入的是下边结构中的key1, key2, key3,而窗口种类直接放到
对应的子节点之下即可,系统会自动检测:
{
"_modal":{
"success":{
"key1": "message1"
},
"error":{
"key2": "message2"
},
"confirm":{
"key3": "message3"
}
}
}
Parameters:
| Name | Type | Description |
|---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
key |
String | 配置键值。 |
callback |
function | 当前窗口专用回调函数,用户窗口点击按钮的回调。 |
(static) sexIdentifier(reference, config) → {any}
「引擎」Ux.sexIdentifier
前端标识规则选择器
根据配置执行标识规则选择,配置数据格式如:
{
"dataKey": "<抓取含有标识规则的字典>",
"parentField": "<标识规则的父字段字段名>"
}
选择规则:
- 第一选择:直接选择
props中的$identifier属性值作为第一选择标识规则。 - 第二选择:从
dataKey中读取 Assist 数据,然后执行 treeShared 来执行选择。
当前选择是选择 $options 相关的树中查找到的节点的 identifier 数据。
Parameters:
| Name | Type | Description |
|---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
config |
Object | 标识规则选择配置。 |
Returns:
返回的 identifier。
- Type
- any
(static) sexMessage(reference, key, duration)
「引擎」Ux.sexMessage
该函数和模态框的窗口配置没太大的,区别,核心结构如下,唯一的区别是响应过后不使用模态框,直接使用message消息框。
{
"_modal":{
"success":{
"key1": "message1"
},
"error":{
"key2": "message2"
},
"confirm":{
"key3": "message3"
}
}
}
Parameters:
| Name | Type | Description |
|---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
key |
String | 配置键值。 |
duration |
Number | 消息停留的时间。 |
(static) sexModal(reference, key, fnRender) → {Jsx}
「引擎」Ux.sexModal
内部使用组件DialogButton用于渲染带窗口操作按钮,fnRender渲染部分位于窗口内部。
从 key 中提取资源文件配置,如果配置中包含了 dialog 和 button 则满足渲染条件,
这种情况下,执行窗口配置,包括配置 onOk, onCancel 等函数和关闭函数,最终生成合法的配置
传入到DialogButton组件中,形成带窗口的事件按钮。
最终计算的配置结构如:
{
"$mode": "窗口类型",
"$dialog": "<窗口配置>",
"$button": "<按钮操作>",
"$loading": "<加载状态>"
}
Parameters:
| Name | Type | Description |
|---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
key |
String | 读取配置专用的 Key,内部调用 |
fnRender |
渲染函数。 |
Returns:
返回最终渲染的Jsx。
- Type
- Jsx
(static) sexOp(reference, key, events) → {Array}
「引擎」Ux.sexOp
-
events 会根据 op 节点的 key 值执行绑定,绑定时会调用一次
events[op.key](reference),所以必须是一个二阶函数 -
op 的数据结构参考下表
"_op": [
{
"key": "$opSave",
"text": "保存",
"icon": "save",
"type": "primary"
}
]
Parameters:
| Name | Type | Description |
|---|---|---|
reference |
Object | ReactComponent | React组件引用。 |
key |
String | 配置键值。 |
events |
Object | 绑定的事件信息 |
Returns:
生成最终的 操作集合
- Type
- Array
(static) sexTable(reference, key) → {any}
「引擎」Ux.sexTable
内部调用 sexCab 读取表格配置,一般 key 取 table,该配置可直接被
Ant Design中的<Table/>组件直接消费。
Parameters:
| Name | Type | Description |
|---|---|---|
reference |
Object | ReactComponent | React组件。 |
key |
String | 配置键值。 |
Returns:
返回表格专用数据。
- Type
- any