如何使用React Mozilla表单创建一个复选框数组?

时间:2017-03-19 05:50:34

标签: reactjs jsonschema json-schema-validator

我正在尝试使用https://github.com/mozilla-services/react-jsonschema-form

制作表单

与此example类似,但在这里我试图制作一系列状态。

我在创建同样的jsonschema时失败了。

我的样本json模式是

const schema = {
    type:'object',
  properties:{
    'states':{
          'type':'array',
         items: {
        type: "object",
        properties: {
          description: {
            "type": "string"
          }
        }
      }
    }
  }

}

1 个答案:

答案 0 :(得分:2)

这应该有效:

const schema = {
    "type":"object",
        "properties":{
        "states":{
        "type":'array',
        "items": {
             "type": "number",
             "enum": [1,2,3],
             "enumNames":["New York","California","Dallas"]
            }
        },
        "uniqueItems": true
    }
}

const uiSchema = {
    "states": {
        "ui:widget": "checkboxes"
    }
}

如果uniqueItems存在,这将呈现一个复选框列表。

小提琴 - https://jsfiddle.net/r7otypfp/ 链接到docs

希望有所帮助。