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

@typescript-eslint/explicit-function-return-type的allowHigherOrderFunctions配置疑问

关于@typescript-eslint/explicit-function-return-type规则的疑问解答

这是预期行为,核心原因在于allowHigherOrderFunctions选项的生效逻辑:

该选项仅允许**直接返回函数字面量(匿名函数/箭头函数)**的高阶函数跳过显式返回类型检测,而返回已定义的具名函数时,不会触发这个例外规则。

  • 第一个示例中,arrowHoc返回的是已经声明好的arrowFn1,并非直接返回函数字面量,所以规则要求必须为arrowHoc显式标注返回类型,因此检测失败。
  • 第二个示例中,arrowFn2直接返回了一个箭头函数字面量,完全符合allowHigherOrderFunctions的例外条件,所以检测通过。

如果想让第一个示例通过检测,有两种可行方式:

  1. 为arrowHoc显式标注返回类型:
const arrowFn1 = (): void => {
  return;
};
export const arrowHoc = (): (() => void) => arrowFn1;
  1. 调整写法,让arrowHoc直接返回函数字面量(参考第二个示例的结构)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 20:12:35