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 をエクスポートしていても、衝突しない。使用方法
設定ファイルまたは CLI でこのルールを有効化するには、次のように使用できます:
json
{
"plugins": ["import"],
"rules": {
"import/export": "error"
}
}bash
oxlint --deny import/export --import-plugin