Skip to content
← Back to rules

import/no-default-export 制限

何をするか

モジュールがデフォルトエクスポートを持つことを禁止します。これにより、エディタがより良い自動インポート機能を提供できるようになります。名前付きエクスポートはデフォルトエクスポートよりも明示的かつ予測可能なインポートを可能にするためです。

なぜ問題なのか

デフォルトエクスポートは、インポートの方法によってインポートされた値の名前が変わる可能性があるため、混乱を引き起こすことがあります。これはリファクタリングや自動インポートの信頼性を低下させる原因になります。

このルールに違反するコードの例:

javascript
export default 'bar';

const foo = 'foo';
export { foo as default }

このルールに従う正しいコードの例:

javascript
export const foo = "foo";
export const bar = "bar";

使い方

設定ファイルまたは CLI でこのルールを有効化するには、以下の方法を使用できます:

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

参照