new Logger()
日志记录器
虽然 Logger 是类,但是在整个 Zero Ui
框架中,它的调用方式比较特殊,实际上它是
JavaScript 中的一个 Object 结构,可直接使用,并且整个环境中只有一个,大部分地方都直接使用了Logger类执行日志输出。
Logger调用
// 非法的使用方法
const logger = new Logger();
// 合法调用方法,即使是一个类,也需要使用单例模式
import Ux from 'ux';
Ux.Logger.xxx
日志记录器只在开发环境生效,
NODE_ENV
值为development
,DEV_develop
的值为true
。
成员函数表
函数名 | 说明 |
---|---|
filters | 打印查询条件。 |
layout | 打印布局模板。 |
mock | (模拟环境)打印模拟环境数据。 |
render | 五阶段的render生命周期日志打印。 |
request | Ajax请求数据打印。 |
response | Ajax响应数据打印。 |
sign | 数字签名结果打印。 |
Methods
(static) filters(reference, config)
「标准」Ux.Logger.filters
日志记录不同的查询函数相关信息,config数据结构如下:
{
"input": "输入的查询条件",
"query": "props 中的查询条件 -> $query",
"filters": "state 中的列过滤条件 -> $filters",
"cond": "state 中的外置查条件 -> $condition"
}
打印过滤条件专用日志记录器!
Parameters:
Name | Type | Description |
---|---|---|
reference |
React.Component | React组件引用。 |
config |
Object | 基本查询配置。 |
(static) layout(layoutType, window, dft)
「标准」Ux.Logger.layout
Logger中的方法调用,打印布局相关日志,配置参数的结构如下:
layoutType
{
"label": "标签显示文本",
"key": "根据布局计算的key值,四位数字"
}
Parameters:
Name | Type | Default | Description |
---|---|---|---|
layoutType |
Object | 布局类型。 |
|
window |
Number | Form中的 window 专用参数。 |
|
dft |
Number |
true
|
Form中的 window 的默认值打印。 |
(static) mock(request, response, url)
「标准」Ux.Logger.mock
打印整个mock
模拟数据过程中的请求和响应相关数据信息。
Parameters:
Name | Type | Description |
---|---|---|
request |
Request | fetch中的请求对象。 |
response |
Response | fetch中的响应数据。 |
url |
String | 请求对应的RESTful接口地址。 |
(static) render(phase, item, key)
「标准」Ux.Logger.render
Logger中的表单不同生命周期的日志记录器。
phase 阶段
阶段值的含义:
- 阶段
1
:表单开始初始化配置信息。 - 阶段
2
:字段信息打印,处理 optionItem, optionJsx 配置信息。 - 阶段
3
:打印最终结果。 - 阶段
4
:布局打印,内部调用layout
方法。 - 阶段
5
:行配置专用处理,row configuration 信息。
item 配置
对应Json中的每个字段的配置,结构如:
{
"field": "字段名称",
"optionItem": "<Form.Item> 对应配置",
"optionJsx": "组件本身所需配置",
"optionConfig": "特殊配置"
}
key 配置
记录了基本的表单信息,如 window, default, columns 等基本表单信息。
Parameters:
Name | Type | Default | Description |
---|---|---|---|
phase |
Number |
1
|
渲染表单的生命周期。 |
item |
any | 输入的相关信息。 |
|
key |
any | 配置基本数据,如 window, dft 等表单所需。 |
(static) request(request, parameters, token)
「标准」Ux.Logger.request
打印Ajax请求中的核心请求数据,发送Ajax之前记录日志。
Parameters:
Name | Type | Description |
---|---|---|
request |
Request | fetch中的请求对象。 |
parameters |
Object | 请求的所有数据信息。 |
token |
String | 安全模式下生成的 token 信息打印。 |
(static) response(data, params, request, isMock) → {Promise.<T>}
「标准」Ux.Logger.response
打印Ajax请求中的响应数据日志记录
Parameters:
Name | Type | Default | Description |
---|---|---|---|
data |
Object | 核心响应数据内容,包含了参数信息 |
|
params |
Object | 请求数据内容 |
|
request |
Request | 请求对象本身 |
|
isMock |
boolean |
false
|
是否启用模拟数据的打印 |
Returns:
返回最终的 Promise
- Type
- Promise.<T>
(static) sign(uri, method, parameters, config)
「标准」Ux.Logger.sign
签名过高中的 Http 请求数据,签名结果结构如下:
{
"seed": "签名的基础种子值",
"sig": "签名的最终结果sig,前后端必须一致",
"secret": "签名引入的 secret,每个终端不一样(每个用户也可能不一样)"
}
Parameters:
Name | Type | Description |
---|---|---|
uri |
String | 请求的Uri地址 |
method |
String | Http方法信息 |
parameters |
Object | 请求过程中的参数 |
config |
Object | 计算的最终签名结果 |