【发布时间】:2020-07-24 15:19:57
【问题描述】:
我正在尝试使用 Formik 制作结帐表单,但是当我单击提交按钮并将数据记录到我的控制台时,我在第二次单击之前看不到任何更改。
onSubmit={(values) => {
addData(values);
console.log(data);
}}>
const addData = (billing) => {
setData((currentData) => {
const shipping = {
first_name: billing.first_name,
last_name: billing.last_name,
address_1: billing.address_1,
address_2: billing.address_2,
city: billing.city,
state: billing.state,
postcode: billing.postcode,
country: billing.country,
};
return {billing, shipping, ...currentData};
});
};
const [data, setData] = useState({
payment_method: 'bacs',
payment_method_title: 'Direct Bank Transfer',
set_paid: true,
line_items: [
{
product_id: 93,
quantity: 2,
},
{
product_id: 22,
variation_id: 23,
quantity: 1,
},
],
shipping_lines: [
{
method_id: 'flat_rate',
method_title: 'Flat Rate',
total: '10',
},
],
});
此外,当我去更改数据时(我的表单在提交时不会重置)我仍然看到旧数据并且它没有更新。
【问题讨论】:
标签: reactjs forms react-native formik