【发布时间】:2018-03-24 17:21:26
【问题描述】:
我正在使用 Node 的 AJV(它强制执行 JSON Schema)。
我想验证 array1 properties.bars。很简单。
然后我要确保array2 properties.keep 中的一个项目在array1 properties.bars 中。
我该怎么做?
我有:
const config = require('../../../config')
const VALID_BARS = Object.keys(config.LHS_RHS_LOOKUP)
const schemaItems = {
id: 'schemaItems',
type: 'string',
anyOf: [
{ enum: VALID_BARS },
{ pattern: '^[^\\s]+ [^\\s]+$' }
]
}
const schemaOptions = {
type: 'object',
properties: {
bars: {
type: 'array',
default: [VALID_BARS[0]],
items: schemaItems,
minItems: 1,
uniqueItems: true
},
keep: {
type: 'array',
default: [],
items: schemaItems, // << THIS NEEDS TO CHANGE
minItems: 0,
uniqueItems: true
},
protect: {
default: true,
type: 'boolean'
}
}
}
module.exports = schemaOptions
【问题讨论】:
标签: node.js jsonschema ajv