我要在用户提交表单后重置redux-form
。而且我正在尝试将Redux的返回值应用于初始值,但是它不起作用。提交后,它不会改变。不重置。
反应成分
onSubmit = values => {
this.props.createMessage(values);
};
<form onSubmit={handleSubmit(this.onSubmit)}>
<Field
label={"Message"}
name="content"
placeholder={
"Enter text"
}
component={MessageForm}
validate={required}
/>
<button type="submit">
Submit
</button>
</form>
function mapStateToProps({ messages }) {
return {
initialValues: {
content: messages.content
}
};
}
减速器
import { CREATE_MESSAGE } from "../actions";
const initialState = { content: "" };
export default (state = initialState, action) => {
switch (action.type) {
case CREATE_MESSAGE:
return state;
default:
return state;
}
};
动作
export function createComment(values) {
return dispatch => {
commentsRef
.add({
content: values.content,
created_at: firebase.firestore.FieldValue.serverTimestamp()
})
.then(function() {
dispatch({ type: CREATE_MESSAGE });
});
};
}