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

React组件form的onSubmit处理函数内调用方法报未定义问题

报错原因
  • 你当前使用的是React类组件写法,用箭头函数声明的validateForm是挂载在组件实例上的方法,不属于全局作用域的函数
  • 你在formSubmit中直接写validateForm()调用时,JS会优先从当前函数作用域、上层作用域直到全局作用域查找该函数,找不到就会抛出未定义错误
修复方法

调用时加上this指向当前组件实例即可访问到你定义的方法,你用类属性箭头函数的写法已经自动绑定了this指向,不需要额外做绑定处理:

formSubmit=(e)=>{
  e.preventDefault();
  this.validateForm();
}
validateForm=()=>{
  console.log("test")
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 19:06:09