art

art命令

1. 基本使用

art命令的专用语法如下:

art <command> [options1|options2|options3...]

2. 命令列表

命令执行 含义
art complex 「模块」生成ExListComplex专用模块。
art form 「组件」生成ExForm专用组件。

3. 标准化配置

{
     module: 'ZT环境变量设置的模块',
     language: 'Z_LANGUAGE语言环境变量设置,默认「cn」',
     pathRoot: '系统根据执行目录计算的当前项目根目录',
     pathResource: '资源目录',
     pathUi: '生成代码目录',
     namespace: 'Cab.json中所需的名空间值',
     input: {
         params: {
             MODULE: '当前模块的文字描述名称',
             API: '构造标准接口`/api/xxx`的RESTful接口专用路径替换部分。',
             IDENTIFIER: '模型的统一标识符,最终会绑定到identifier中。'
         },
         tpl: {
             type: '使用的模板tpl文件目录,cab/下的目录名',
             source: '「单文件」单文件的拷贝源',
             target: '「单文件」单文件的目标拷贝文件'
         }
     },
     runtime: {
         namespaceFile: 'Cab.json文件生成路径',
         resource: '资源文件的根目录',
         resourceFiles: {
             'fileName1': '资源文件地址,json后缀,模板则是fileName1.tpl文件',
             'fileName2': '......'
         },
         ui: '代码文件根目录',
         uiFiles: {
             'fileName1': '代码文件地址,js后缀,模板则是fileName1.tpl文件',
             'fileName2': '......'
         }
     }
}

4. 标准化模板参数

tpl文件中替换的部分会使用配置文件中的参数来替换。

参数 替换部分 含义
MODULE #MODULE# 当前模块的文字描述名称。
API #API# 构造标准接口/api/xxx的RESTful接口专用路径替换部分。
IDENTIFIER #IDENTIFIER# 模型的统一标识符,最终会绑定到identifier中。
NAME #NAME# 绑定文件设定,直接赋值input.params.NAME = tpl.target生成单文件专用。
SIGMA #SIGMA SIGMA统一标识符,用于标识租户、应用。
ROLE_ID #ROLE_ID# 操作的角色ID。
PREFIX 生成文件专用参数,不在模板中。
SHEET 工作专用的Sheet名,不在模板中。

Methods

(static) complex()

art complex

1. 命令

art complex
短参 全参 类型 默认 含义
-c --config String ui.json 配置文件路径。

2. 介绍

使用该命令生成完整的ExListComplex完整组件页。

3. 执行

art complex
# ...省略部分...
[Zero AI] Zero AI 系统启动......
[Zero AI] Zero AI 加载输入参数:
{
     "config": "ui.json"
}
[Zero AI] 「启用ZT环境」,当前模块:generated/test,特殊命令只能在ZT环境使用。
[Zero AI] Zero AI  0. 基础环境......
[Zero AI] 环境变量:ZT = generated/test
[Zero AI] 模块信息:generated/test
[Zero AI] 语言信息:cn
[Zero AI] 项目目录:<项目根目录>
[Zero AI] Zero AI  1. 目录检查......
[Zero AI] Zero AI  2. 文件表:
[Zero AI]           UI.Add = <项目根目录>/src/cab/cn/components/generated/test/UI.Add.json
[Zero AI]          UI.Edit = <项目根目录>/src/cab/cn/components/generated/test/UI.Edit.json
[Zero AI]        UI.Filter = <项目根目录>/src/cab/cn/components/generated/test/UI.Filter.json
[Zero AI]               UI = <项目根目录>/src/cab/cn/components/generated/test/UI.json
[Zero AI]               UI = <项目根目录>/src/components/generated/test/UI.js
[Zero AI]               Op = <项目根目录>/src/components/generated/test/Op.js
[Zero AI]          UI.Form = <项目根目录>/src/components/generated/test/UI.Form.js
[Zero AI] Zero AI  3. 执行React命令......
[Zero AI] Zero AI       3.1. 创建名空间文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/Cab.json!
[Zero AI] Zero AI       3.2. 构造资源文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.Add.json!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.Edit.json!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.Filter.json!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.json!
[Zero AI] Zero AI       3.3. 构造界面文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/UI.js!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/Op.js!
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/UI.Form.js!
[Zero AI] Zero AI  4. 命令执行完成!!!

代码执行完成后会在项目中生成Zero UI专用模块generated/test的所有页面以及组件。

  • 执行代码之前先执行export ZT=generated/test确保ZT环境变量有值。
  • 执行位置可以是当前项目中的任意一个路径,脚本会自己计算当前项目的根目录(Zero UI专用)。
  • 该命令执行时模板文件位置位于src/cab/list目录中,且模板文件以tpl结尾。

4. 生成的文件说明

文件名 模板 含义
Cab.json 名空间关联文件,计算得来。
UI.Add.json UI.Add.json.tpl 「无字段」添加表单专用资源文件。
UI.Edit.json UI.Edit.json.tpl 「无字段」编辑表单专用资源文件。
UI.Filter.json UI.Filter.json.tpl 过滤表单专用资源文件(高级搜索用)。
UI.json UI.json.tpl 主界面资源文件。
UI.js UI.js.tpl 主界面脚本文件。
Op.js Op.js.tpl Action/Callback专用Js事件脚本。
UI.Form.js UI.Form.js.tpl 三个表单合一的专用Js脚本。

(static) form()

art form

1. 命令

art form -u <ui>
短参 全参 类型 默认 含义
-u --ui String 生成的文件名,最终生成<Name>.json/<Name>.js
-c --config String ui.json 配置文件路径。

2. 介绍

使用该命令生成完整的ExForm完整表单组件页。

3. 执行

art form -u UI.Basic
# ...省略部分...
[Zero AI] Zero AI 系统启动......
[Zero AI] Zero AI 加载输入参数:
{
     "config": "ui.json",
     "ui": "UI.Basic"
}
[Zero AI] 「启用ZT环境」,当前模块:generated/test,特殊命令只能在ZT环境使用。
[Zero AI] Zero AI  0. 基础环境......
[Zero AI] 环境变量:ZT = generated/test
[Zero AI] 模块信息:generated/test
[Zero AI] 语言信息:cn
[Zero AI] 项目目录:<项目根目录>
[Zero AI] Zero AI  1. 目录检查......
[Zero AI] Zero AI  2. 文件表:
[Zero AI] Zero AI  3. 执行React命令......
[Zero AI] Zero AI       3.1. 创建名空间文件......
[Zero AI] Zero AI       3.2. 构造资源文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/cab/cn/components/generated/test/UI.Basic.json!
[Zero AI] Zero AI       3.3. 构造界面文件......
[Zero AI] (Sync)成功将数据写入到文件:<项目根目录>/src/components/generated/test/UI.Basic.js!
[Zero AI] Zero AI  4. 命令执行完成!!!

代码执行完成后会在项目中生成Zero UI专用模块generated/test中唯一的两个页面。

  • 执行代码之前先执行export ZT=generated/test确保ZT环境变量有值。
  • 该命令执行时模板文件位置位于src/cab/form目录中,且模板文件以tpl结尾。
  • 生成的UI.js的按钮部分直接位于当前文件中,并且默认包含了ADD, EDIT, DELETE三个核心按钮。

4. 生成的文件说明