Javascript JSON模式不正确

Javascript JSON模式不正确,javascript,json,jsonschema,json-schema-validator,Javascript,Json,Jsonschema,Json Schema Validator,我正在创建一个JSON模式,并使用它根据一些数据验证模式。 由于公司保密,我无法在此发布代码,因此我将尝试描述问题: 我有3个输入字段,第一个是选择器(字符串),第二个是运算符下拉列表(相等、不相等、in、ni等),第三个是包含值的输入字段 其想法是将此结构设置为“选择器:运算符:值”。 为了澄清,假设我们有这个JSON,并假设我们有三个变量选择器、运算符和值作为模式(想法是从上面提到的输入字段中获取这些值并创建模式) 我需要定义模式 const schema = { "properti

我正在创建一个JSON模式,并使用它根据一些数据验证模式。 由于公司保密,我无法在此发布代码,因此我将尝试描述问题:

我有3个输入字段,第一个是选择器(字符串),第二个是运算符下拉列表(相等、不相等、in、ni等),第三个是包含值的输入字段

其想法是将此结构设置为“选择器:运算符:值”。 为了澄清,假设我们有这个JSON,并假设我们有三个变量选择器、运算符和值作为模式(想法是从上面提到的输入字段中获取这些值并创建模式)

我需要定义模式

const schema = {
    "properties": {
       [selector]: {"type": "string"},
       [operator]: {"type":"string"},
       [value]: {"type": string}
     }   
}
如果我用say(selector:id操作符:Equal value:“one”)完成字段,它应该通过验证,但如果我说(selector:id操作符:Equal value:1),它不应该通过验证


这个模式是错误的。你知道怎么定义它吗

ajv模式的文档中提到了有关如何使用的具体细节

希望有帮助

const schema = {
    "properties": {
       [selector]: {"type": "string"},
       [operator]: {"type":"string"},
       [value]: {"type": string}
     }   
}