Redux-Форма не будет отправлена, если более одного поля - PullRequest
0 голосов
/ 08 января 2019

Почему моя избыточная форма не отправляется, если у меня есть более одного поля?

Если у меня более одного поля, onSubmit в моей форме не запускается.

Следующий код не покажет предупреждение:

//@flow
import * as React from 'react';
import {Field, reduxForm, Form} from 'redux-form';


class CustomerPage2 extends React.Component {

    constructor(props) {
        super(props);
    }

    render() {

        let submit = () => alert("show me the money")

        return (
                <Form id="myform" onSubmit={submit} >
                        <Field
                            label={'asdf'}
                            className={'input'}
                            id='1'
                            name={'salutation'}
                            mandatory={true}
                            component='input'
                        />
                        <Field
                            label={'asdf2'}
                            className={'input'}
                            id='2'
                            name={'first_name'}
                            mandatory={true}
                            component='input'
                        />
                </Form>
        );
    }
}

export default reduxForm({
    form: 'customerRegistration',
})(CustomerPage2)

Однако, если я удалю одно из полей, появится предупреждение:

render () {

let submit = () => alert("show me the money")

return (
        <Form id="myform" onSubmit={submit} >
                <Field
                    label={'asdf'}
                    className={'input'}
                    id='1'
                    name={'salutation'}
                    mandatory={true}
                    component='input'
                />
        </Form>
);

}

Я также создал скрипку, где вы можете увидеть ее своими глазами:

https://jsfiddle.net/036ur33k/150/

Просто удалите одно из полей, и вы поймете, что я имею в виду.

1 Ответ

0 голосов
/ 10 января 2019

Я думаю, что вы забыли использовать функцию handleSubmit (добавочная форма добавляется в реквизиты компонента) в вашем событии onSubmit.

Я изменил вашу скрипку, проверьте, что вам нужно.

https://jsfiddle.net/036ur33k/173/

...