React - Redux-Form Remote Submit - PullRequest
       7

React - Redux-Form Remote Submit

0 голосов
/ 22 октября 2018

Я пытаюсь удаленно отправить форму, используя приставку.Мой вопрос будет, как мне выполнить избыточные действия из функции вне компонента.Эквивалент высказывания:

this.props.action (params);

Мой код выглядит следующим образом:

async function submit(values) {
    return (
        //Equivalent of => this.props.addOne(values.name)
        await actions.addOne(values.name, 60)
    )
}

const renderTextField = ({ input, label, meta: { touched, error } }) =>
<TextField 
    autoFocus
    margin="dense"
    fullWidth
    type="text"
    label={label}
    {...input}
/>

class LibrarySubsectionForm extends React.Component {
render() {
    const { handleSubmit } = this.props;

    return (
        <form onSubmit={handleSubmit}>
            <Field
                component={renderTextField}
                name="name" 
                label="Subsection Name"
            />
        </form>
    )
}
}

export default compose(
connect(null, actions),
reduxForm({ form: 'AddSubsection', onSubmit: submit })
)(LibrarySubsectionForm);

1 Ответ

0 голосов
/ 22 октября 2018

Redux-форма передает dispatch функцию и props вашего декорированного компонента как второй и третий аргументы обработчика onSubmit.Таким образом, у вас есть доступ к ним внутри вашей функции submit.Если вы передаете actions в качестве реквизита LibrarySubsectionForm, вы можете получить к ним доступ в функции submit:

async function submit(values, dispatch, props) {
    return await props.actions.addOne(values.name, 60);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...