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

React TypeScript中@typescript-eslint/explicit-function-return-type报错疑问

问题解答

两种处理方式均为合理方案,可根据团队代码规范要求选择:

方案1:显式声明void返回类型(正确合法)

  • 完全符合TypeScript语法规范和ESLint规则要求,无需修改规则配置
  • 代码意图清晰,可明确告知其他开发者该回调不需要返回任何值,同时能避免误写返回逻辑的隐性问题
  • 缺点是大量短回调场景下会产生冗余代码

方案2:调整ESLint规则忽略箭头函数表达式的返回类型检查(业内更常用)

@typescript-eslint/explicit-function-return-type规则的核心设计目的是约束命名函数、顶层导出函数的返回类型声明,避免隐式返回带来的类型隐患。而JSX事件回调这类作为表达式传递的箭头函数,TypeScript本身可以从onClick的属性类型定义中自动推导出返回值为void,无需手动声明。
你可以通过修改ESLint配置开启allowExpressions参数,仅禁用对箭头函数表达式的检查,保留对其他类型函数的规则约束:

{
  "rules": {
    "@typescript-eslint/explicit-function-return-type": ["error", {
      "allowExpressions": true
    }]
  }
}

该配置是该规则的官方推荐常用调整项,兼顾了类型安全和代码简洁性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 05:57:01