我無法useDispatch在 Formik 的handleSubmit函式內部呼叫。submit單擊按鈕時,我想將提交的表單值發送到 redux 存盤。我怎樣才能做到這一點?
這是錯誤 - An unhandled error was caught from submitForm(), [Error: Invalid hook call. Hooks can only be called inside of the body of a function component.
這是我的代碼片段
const handleSubmit = values => {
const dispatch = useDispatch();
console.log(dispatch)
dispatch({
type: "ADD_TO_PROFILE",
payload: {...values}
})
}
<Formik initialValues={{'dob': ''}}
onSubmit={handleSubmit}
>
({handleChange, handleBlur, setFieldValue, handleSubmit, values, errors }) => (
<Button onPress={handleSubmit} />
)}
</Formik>
uj5u.com熱心網友回復:
像這樣移出const dispatch = useDispatch();:handleSumbit
const dispatch = useDispatch();
const handleSubmit = values => {
console.log(dispatch)
dispatch({
type: "ADD_TO_PROFILE",
payload: {...values}
})
}
<Formik initialValues={{'dob': ''}}
onSubmit={handleSubmit}
>
({handleChange, handleBlur, setFieldValue, handleSubmit, values, errors }) => (
<Button onPress={handleSubmit} />
)}
</Formik>
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/420546.html
標籤:
上一篇:省去跨表聯查與注釋查詢的存盤程序
