SubmissionError 是否适用于 FieldArray 字段?

Ern*_*ert 2 javascript reactjs redux redux-form

如果是这样,如何正确传递字段名称以使其在组件内显示错误?

我在下面做的方式不起作用:

<FieldArray name='myFieldArray' component={renderArrayField} />

function onSubmit(values) {

    values.myFieldArray.forEach((myField, index) => {

        if (!myField.someText) {

            const errorObj = {}
            const myFieldName = "myFieldArray[" + index + "].someText"

            errorObj[myFieldName] = 'Field required!'
            throw new SubmissionError(errorObj)
        }
    })

    // save the form
}
Run Code Online (Sandbox Code Playgroud)

我也试过:

const myFieldName = "myFieldArray[" + index + "].someText._error"
Run Code Online (Sandbox Code Playgroud)

const myFieldName = "myFieldArray[" + index + "]['someText']"
Run Code Online (Sandbox Code Playgroud)

const myFieldName = "myFieldArray[" + index + "]['someText']['_error']"
Run Code Online (Sandbox Code Playgroud)

但也没有交易...

Vin*_*our 6

您需要使用深层对象来显示嵌套字段的错误。像这样:

const errorObj = {
  myFieldArray: { 
    [index]: { 
      someText: 'Field required!' 
    } 
  }
};

throw new SubmissionError(errorObj);
Run Code Online (Sandbox Code Playgroud)