我想根据选中的复选框有条件地呈现输入字段。
这个复选框是嵌套的,我不知道如何访问它。
我用了这个:
{
"type": "object",
"properties": {
"firstName": {
"type": "boolean"
}
},
"dependencies": {
"firstName": {
"oneOf": [
{
"properties": {
"firstName": {
"enum": [true]
},
"lastName": {
"type": "string"
}
}
}
]
}
}
}
示例
现在,如果依赖项是这样嵌套的呢?:
{
"type": "object",
"properties": {
"test": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
}
},
"dependencies": {
"test": {
"enabled": {
"oneOf": [
{
"properties": {
"enabled": {
"enum": [true]
},
"lastName": {
"type": "string"
}
}
}
]
}
}
}
}
正如你所看到的:我试图访问它,但它没有被正确识别。我该如何处理这个问题?这可能吗?
JSON Scheme Validator表示其有效
您缺少一个"属性";在";依赖关系"->quot;测试";。该点下的所有内容都不会被识别为模式。
"dependencies": {
"test": {
"properties": {
"enabled": {
...
"依赖关系";记录如下:https://json-schema.org/understanding-json-schema/reference/conditionals.html#id5.
看起来必须将dependencies
与属性放在同一个架构对象中。。。像这个
{
"type": "object",
"properties": {
"test": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
},
"dependencies": {
"enabled": {
"oneOf": [
{
"properties": {
"enabled": {
"const": true
},
"lastName": {
"type": "string"
}
}
}
]
}
}
}
}
}
这是可行的,但我不知道得到的数据是否是您所期望的。
我是JSONSchema的专家,但我从未使用过表单生成工具。