Skip to content
← Back to rules

import/export Nursery

它的作用

报告导出中的异常情况,例如同名导出或默认导出重复。

为什么这是个问题?

同一名称存在多个导出会导致代码库中出现歧义和混淆。 这使得难以追踪正在使用的具体导出, 如果引用了错误的导出,还可能导致运行时错误。

示例

此规则的 错误 代码示例:

javascript
let foo;
export { foo }; // 多次导出名称 'foo'。
export * from "./export-all"; // 如果 export-all.js 也导出了 foo,会产生冲突

此规则的 正确 代码示例:

javascript
let foo;
export { foo as foo1 }; // 重命名导出以避免冲突
export * from "./export-all"; // 即使 export-all.js 也导出了 foo,也不会产生冲突

如何使用

通过配置文件或命令行启用此规则的方法如下:

json
{
  "plugins": ["import"],
  "rules": {
    "import/export": "error"
  }
}
bash
oxlint --deny import/export --import-plugin

参考资料