React中POST请求如何正确在Body中传递参数值
解决请求体中传递变量值的问题
直接修改请求体的赋值方式即可,正确代码如下:
const otpLoginAction: any = (formValues: { mobile: string }) => ({ method: "POST", endpoint: `/user/auth/client/otp/send`, body: { mobile: formValues.mobile }, }); <TextField id="phoneNumber" name="phoneNumber" label="Enter Mobile Number*" className="form-input-custom" value={values.phoneNumber} onChange={handleNumberChange} error={errors.phoneNumber}/>
问题原因说明
- 你之前使用
mobile:'${formValues.mobile}'时,单引号'会将内部内容视为纯字符串,${}模板语法不会被解析,所以传递的是字面量'${formValues.mobile}'而非真实变量值。 - 模板字符串的
${}语法仅在**反引号`**中生效,但此处完全不需要模板字符串——对象属性赋值时直接引用变量即可,mobile: formValues.mobile会直接将变量的真实值传入请求体。
额外注意
确保表单提交时,将values.phoneNumber正确映射到formValues.mobile(比如调用otpLoginAction时传入{ mobile: values.phoneNumber }),避免字段名不匹配导致值为空。
内容的提问来源于stack exchange,提问作者govind jha
相关产品推荐
相关产品推荐

