Tcomb-form-native:如何向表单动态添加新选项

时间:2018-09-12 16:31:10

标签: javascript react-native tcomb-form-native

我的组件中包含以下表单:

this.state.customFieldsArray.length > 0 &&
          (
            <Form
              ref="customForm"
              type={this.customForm}
              options={this.customFormOptions}
            />
          )}

当我单击按钮时,我想向表单添加更多选项(以便呈现更多字段)。 这是处理单击按钮的方法:

  addCustomField = () => {
 let newFieldName = this.state.customFieldLabel;
 let newField = { newFieldName: "" };
 this.customFormOptions.fields[newFieldName] = {
  label: newFieldName
 };
  tempCustomFieldsArray.push(newField);
  this.setState({
   customFieldsArray: tempCustomFieldsArray
 });
 };

我已经尝试过了,但是没有用。

1 个答案:

答案 0 :(得分:0)

此代码对我有用,创建调用函数的结构表单模型,并在其中使用您的条件

formModel: t.struct({
  customFields: this.getCustomFields(),
}),

然后您创建customFields函数,

  getCustomFields = () => {
    const customFields = {}
    //write your condition here
    return t.enums(customFields)
  }