You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React17模拟银行应用:表单提交无法正确创建数据库对象

问题解决:React表单提交时数据库存入占位符而非实际值

问题根源

你在CreateForm组件的handle函数中,用单引号定义URL字符串,导致模板变量${name}、${email}、${password}没有被实际输入值替换,直接以占位符文本传递给后端,最终数据库存入了这些未解析的字符串。

模板字符串必须使用**反引号(`)**才能解析其中的变量,单引号/双引号只会把内容当作普通字符串处理。

修复代码

修改CreateForm里的handle函数中URL的定义:

function handle(){
    console.log(name,email,password);
    // 将单引号替换为反引号,启用模板字符串解析
    const url = `account/create/${name}/${email}/${password}`;
    (async () => {
      var res = await fetch(url);
      var data = await res.json();
      console.log(data);
    })();
    props.setShow(false);
}

额外优化提示

  • 把按钮的type="submit"改为type="button",避免触发默认表单提交行为导致页面刷新:
    <button type="button" className="btn btn-light" onClick={handle}>Create Account</button>
    
  • 可添加基础表单校验(如检查输入是否为空),避免提交无效数据到后端。

内容的提问来源于stack exchange,提问作者Kathleen Tantillo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 17:55:20