1
我想弄清楚如何我可以全局说所有数组必须是长度为1而不必使用minItems:1我在模式中的每个地方指定一个数组。我在创建一个自定义类型,这是一个选项,但我觉得应该有一个更好的方法?使用AJV设置默认规则
另一个全局限制是不允许任何空字符串。
感谢您的帮助!
我想弄清楚如何我可以全局说所有数组必须是长度为1而不必使用minItems:1我在模式中的每个地方指定一个数组。我在创建一个自定义类型,这是一个选项,但我觉得应该有一个更好的方法?使用AJV设置默认规则
另一个全局限制是不允许任何空字符串。
感谢您的帮助!
永远不能改变关键字(全局或其他)的行为。你最好的办法是创建一个包含你的特殊规则的文件。
global.js
{
"definitions": {
"non-empty-array": {
"type": "array",
"minItems": 1
}
}
}
然后,你可以参考这个文件要使用这些特殊规则的任何时间。
example.js
{
"type": "object",
"properties": {
"a": {
"allOf": [{ "$ref": "/global.js#/definitions/non-empty-array" }],
"items": { "type": "string" }
},
"b": {
"allOf": [{ "$ref": "global.js#/definitions/non-empty-array" }],
"items": { "type": "integer" }
}
}
}