表单不会重新提交

时间:2020-04-16 21:15:23

标签: reactjs redux-form

我正在构建与此处https://redux-form.com/8.3.0/examples/fieldarrays/相同的嵌套表单,并且工作正常。但是,在删除字段时,我不仅需要onClick={() => fields.remove(index)},还可以向需要销毁的FieldArray字段之一添加_destroy键。所以我创建了方法:

  const removeField = useCallback(i => {
    const currentField = fields.get(i)
    const newValue = {
      ...currentField,
      _destroy: '1'
    }

    fields.push(newValue)
    fields.remove(i)
  }, [fields])

并添加了条件,以便在提供_destroy键时该字段将消失:

if (fields.get(idx)._destroy === '1') {
  return ''
} 

并将“删除”按钮更改为:

<button type="button" onClick={() => removeField(idx)}>remove</button>

但是此按钮仅可在一个字段中使用一次。因为表格只是不重新呈现。如果我单击字段,则表单正在重新呈现,并且字段消失。 或者,如果我专门为此方法添加状态触发器,它就会开始按预期工作。但是我不明白为什么没有特殊的状态触发器就无法正常工作?

0 个答案:

没有答案