Я пытаюсь загрузить форму Redux, предварительно заполненную значениями из магазина.
В настоящее время я могу заполнить форму с избыточностью данными непосредственно из редуктора, но при отправке формы она принимает данные только для интерактивных элементов для создания полезной нагрузки.
Однако я могу получить данные из редуктора для хранения. Мне нужно инициализировать избыточную форму со значениями магазина.
Есть ли лучший способ инициализировать элементы формы значениями из хранилища и передать всю модель в качестве полезной нагрузки?
Я прилагаю к этому редуксную форму.
Форма Redux: -
import React from 'react';
import { connect } from 'react-redux';
import { Field, reduxForm } from 'redux-form';
let InitializeFromStateForm = props => {
const { handleSubmit, pristine, reset, submitting } = props;
return (
<form onSubmit={handleSubmit}>
<div>
{/* <button type="button" onClick={() => load(data)}>Load Account</button> */}
</div>
<div>
<label>First Name</label>
<div>
<Field
name="first_Name"
component="input"
type="text"
placeholder="First Name"
/>
</div>
</div>
<div>
<label>Last Name</label>
<div>
<Field
name="last_Name"
component="input"
type="text"
placeholder="Last Name"
/>
</div>
</div>
<div>
<button type="submit" >Submit</button>
<button type="button" disabled={pristine || submitting} onClick={reset}>
Undo Changes
</button>
</div>
</form>
);
};
// Decorate with reduxForm(). It will read the initialValues prop provided by connect()
InitializeFromStateForm = reduxForm({
form: 'initializeFromState', // a unique identifier for this form
})(InitializeFromStateForm);
// You have to connect() to any reducers that you wish to connect to yourself
InitializeFromStateForm = connect(
state => ({
initialValues: {'first_Name':'sunil','last_Name':'choudhary'}, // pull initial values from account reducer
}),
// { load: loadAccount }, // bind account loading action creator
)(InitializeFromStateForm);
export default InitializeFromStateForm;