You need to enable JavaScript to run this app. ESLint提示需将箭头函数赋值后再导出为默认模块的原因
优惠活动
大模型
产品
解决方案
定价
更多

ESLint提示需将箭头函数赋值后再导出为默认模块的原因

这个警告来自ESLint的import/no-anonymous-default-export规则,它属于最佳实践约束,并非JavaScript语法层面的错误——ES6原生语法本身是允许直接默认导出匿名箭头函数的。

规则之所以限制这种写法,是因为直接导出未赋值的匿名箭头函数存在三个明显的缺陷:

  • 调试成本高:运行时报错的堆栈追踪中,匿名函数只会显示anonymous标记,不会携带具体的函数标识,定位问题的效率会远低于具名函数。
  • 代码可读性差:其他开发者阅读导出逻辑、或是使用IDE的代码提示功能时,无法第一时间获取该函数的功能语义,需要额外阅读函数内部逻辑才能判断用途。
  • 维护成本高:如果后续需要在当前模块内部调用这个导出的函数,匿名导出的写法无法直接复用,必须额外赋值给变量才能内部引用,反而会增加冗余代码。

符合规则要求的写法参考:

// 先将箭头函数赋值给具名变量,再做默认导出
const handleBizLogic = () => {
  // 函数逻辑
};
export default handleBizLogic;

如果确认不需要遵守该最佳实践,也可以在ESLint配置中关闭import/no-anonymous-default-export规则,或是针对单个文件添加规则忽略注释即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 20:51:00