我正在嘗試設置一個支付網關,但我首先想將所有賬單明細存儲在狀態變量中,然后傳遞給網關,但是在輸入字段中,每當我輸入電子郵件地址時,只要我還在,它就會輸出它在輸入字段中,但是當我選擇 first_name 字段時,它的狀態似乎沒有保存并且默認返回未定義,我覺得我在這里遺漏了什么?當前狀態:let [billingInfo, setBillingInfo] = useState({ email: "", first_name: "", last_name: "", company_name: "", address: "", extra_address: "", city: "", country: "", state: "", zip_code: "", });我如何輸出到控制臺:const testM = (e) => { e.preventDefault(); console.log(billingInfo.email); console.log(billingInfo.first_name); console.log(billingInfo.last_name); }手柄輸入法:let handleInputChange = (e) => { setBillingInfo({ [e.target.name]: e.target.value }); };輸入字段示例:<form className="mt-4 "> <h4 className="mt-4">Contact Information</h4> <div className=" mb-3" style={{ height: "3rem" }}> <input type="tel" name="email" value={state.email} className="rounded" style={{ width: "100%", height: "100%" }} placeholder=" Email Address.." onChange={handleInputChange} /> </div> <h4 className="mt-4">Shipping Information</h4> <div className="row" style={{ height: "3.5rem" }}> <div className="mb-3 col-6"> <input type="tel" name="first_name" value={state.first_name} className="rounded" style={{ width: "100%", height: "100%" }} placeholder=" First Name.." onChange={handleInputChange} /> </div>
每當切換輸入字段時,狀態默認為未定義
搖曳的薔薇
2022-12-08 15:51:14