Skip to content
← Back to rules

import/no-self-import 可疑

它的作用

禁止模块导入自身。这有时会在重构过程中意外发生。

为什么这是不好的?

将模块导入自身会创建循环依赖,可能导致运行时问题,包括无限循环、未解析的导入或 undefined 值。

示例

此规则的错误代码示例:

javascript
// foo.js
import foo from "./foo.js"; // 错误:模块导入自身
const foo = require("./foo"); // 错误:模块导入自身

此规则的正确代码示例:

javascript
// foo.js
import bar from "./bar.js"; // 正确:模块导入另一个模块

如何使用

通过配置文件或 CLI 启用此规则,可以使用:

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

参考资料