FxdApp的元信息和参数定义
元信息和参数定义
通过在 npm 的 package.json
中添加 meta
信息,我们可以指定脚本的作者、以及每一个方法支持的参数。
"meta": {
"for": "fxd",
"author_uid": 1,
"args": {
"main|check|watch": {
"url": {
"name": "url",
"description": "要打开的页面 URL",
"type": "string",
"required": true,
"example": "https://www.example.com"
},
},
"watch": {
"sendkey": {
"name": "sendkey",
"description": "填入后,检测到变化时会调用Server酱发消息",
"type": "string",
"example": "abcdefg1234"
}
}
}
}
指定参数的作用
通过在 package.json
中定义参数,可以直接在GUI中填入。
当然这些参数也可以在命令行的 help 中显示。
支持的属性如下:
- for: 固定为"fxd",用于标识这是一个fxd app
- author_uid: 用于指定 app 作者,只有 app 作者才有权限上架 fxd 商店
- args: 参数信息。
- 第一级为方法,如
watch
、check
;多个方法同时支持的参数可以放到一起,方法名用竖线隔开,如main|check|watch
- 第二级为字段说明,字段说明包含以下属性:
1. name: 英文字段名
1. cn_name: 显示在客户端界面中的中文字段名
1. description: 对字段的说明,通常会作为 placeholder 显示
1. default: 默认值
1. required: 是否必填
1. example: 字段值示例
1. advanced: 是否为进阶参数,如是,则只在「进阶设置」按钮按下时显示
1. type: 字段类型,支持
string
、boolean
、number
1. ui: 字段UI类型,UI默认会根据type
自动适配,但可以强制指定。如type
为string
时默认为文本输入框,但可以指定 UI 为textarea
,这样会将其变为长文本编辑区域。支持textinput
,shortcutinput
,textarea
,numberinput
,dateinput
,select
,multiselect
,jsoninput
,passwordinput
,switch
,cron
- enum: 枚举值,限制输入值为枚举数组的内容,如 ["json","text"]。设置枚举值通常会将UI转化为
select