react-jsonschema-form有多个按钮

时间:2018-04-29 16:46:04

标签: forms schema react-jsonschema-forms

我正在使用react-jsonschema-form开发FORM。尝试通过架构对象添加多个按钮,但无法添加它。

我可以添加内部标记,但是根据我的要求,如果我们想要处理多个表单,有条件地需要添加不同的按钮,那么有任何特定的方法来添加模式对象中的按钮。

1 个答案:

答案 0 :(得分:0)

这就是我所做的

<Form schema={this.state.schema}
       onSubmit={this.state.submitForm}
       formData={this.state.content}
       uiSchema={this.state.uiSchema}
       widgets={this.widgets}
       fields={this.fields}>
       <button type="submit" className='btn btn-success>Create a New Post</button>
       <button type="submit" onClick={this.publish} className='btn btn-success'> Publish </button>
</Form>

在发布方法中

publish() {
    this.publishFlag = true
}

在提交方法中

submitForm(formData) {
    if(this.publishFlag) {
    //do something related to publishing
    this.publishFlag = false //unset the flag
    } else {
    //do the default thing
    }

}

要有条件地显示按钮,您可以

<button type="submit" onClick={this.publish} onSubmit={this.publish}
       className={this.state.buttonState.publishEnabled ? 'btn btn-success' : 'hidden ' }>
                            Publish
                        </button>

和您的风格

.hidden { display:none; }