Динамически получать поля для редукционной формы

Я использую Redux Form с React, но поля формы должны быть жестко запрограммированы. Есть ли способ передать поля динамически от родительского компонента?

/* form.jsx */

import React, { PropTypes } from 'react';
import { Field, reduxForm } from 'redux-form';

export const formFields = [
  'firstname',
  'lastname',
  'password'
]

class RegForm extends Component {
...
}

export default reduxForm({
    form: 'userForm',
    fields: formFields
})(RegForm);

Вот родительский компонент, который использует избыточную форму.

/* parent.jsx */
import RegForm from './RegForm';

...
<RegForm dynamicFields={some-dynamic-fields}>
...

Если в избыточной форме используются жестко закодированные поля (formFields), работает нормально. но если я изменю это на

export default reduxForm({
    form: 'userForm',
    fields: this.props.dynamicFields
})(RegForm);

Это не будет работать, и говорит "не может читать из неопределенного..."

Любые идеи о том, как перейти в динамических полях для редукционной формы?

Заранее спасибо.

1 ответ

Решение

Я понял. Динамические поля будут переданы и получены в самом компоненте формы. В этом случае класс RegForm. В нем this.props.fields - это поля, переданные из родительского компонента.

Другие вопросы по тегам