-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
基于 json-schema 生成表单是足够的,但是不是非常充分;尤其是在展现方面:
[ ] 1. Object 的 properties 的排序干预
[ ] 2. 特殊展现的控件,比如密码类型文本输入框
[ ] 3. 以及其他
因此,需要引入一个额外的配置文件 uiSchema;
基于格式:
{
"$order": ["username", "password"],
"password": {
"$control": "password"
},
"username": {
"$disabled": true
},
"address": {
"$readOnly": true
},
"hiddenField": {
"$hidden": true
}
}其中,以 schema 的 value 值为主体;以 @ 开头的字段是给 uiSchema 使用的,非以 @ 开头的字段是 json-pointer 的一部分;
具体的:
$order只在object类型字段上生效,用以描述object属性展现的顺序$control指定输入控件的渲染组件$disabled整个字段的进入禁用状态$readOnly整个字段进入只读状态$hidden整个字段进入隐藏状态
Metadata
Metadata
Assignees
Labels
No labels