我已经在我的JSON模式中定义了两个不同的属性集,我正在尝试组合一个编辑器,允许用户选择几个属性集中的一个,然后填充相应的属性。
这是我的架构:
{
"type": "object",
"title": "Test Configuration",
"properties": {
"master_property_set": {
"title": "Testing oneOf",
"oneOf": [
{
"type": "object",
"title": "Property set 1",
"properties": {
"property1": {
"type": "string"
},
"property2": {
"type": "string"
}
}
},
{
"type": "object",
"title": "Property set 2",
"properties": {
"property3": {
"type": "string"
},
"property4": {
"type": "string"
}
}
}
]
}
}
}
问题是,当我切换到Property set 2
时,我的数据仍包含property1
和property2
作为空字符串,它们会显示在编辑器中。他们应该被删除。我做错了什么?
可以在此处测试设置:http://goo.gl/j91of7
答案 0 :(得分:1)
我在文档中找到了答案。原来,编辑器的no_additional_properties
属性需要设置为true。
答案 1 :(得分:-1)
{
"type": "object",
"title": "Test Configuration",
"properties": {
"master_property_set": {
"title": "Testing oneOf",
"oneOf": [
{
"type": "object",
"title": "Property set 1",
"properties": {
"property1": {
"type": "string"
},
"property2": {
"type": "string"
}
},
"additionalProperties":false
},
{
"type": "object",
"title": "Property set 2",
"properties": {
"property3": {
"type": "string"
},
"property4": {
"type": "string"
}
},
"additionalProperties":false
}
]
}
}
}