依存関係の最適化オプション #
- 関連: 依存関係の事前バンドル
optimizeDeps.entries #
- 型:
string | string[]
デフォルトでは、Vite はすべての .html
ファイルをクロールして、事前にバンドルする必要のある依存関係を検出します(node_modules
, build.outDir
, __tests__
および coverage
は無視します)。build.rollupOptions.input
が指定されている場合、Vite は代わりにそれらのエントリポイントをクロールします。
これらのいずれもニーズに合わない場合、このオプションを使ってカスタムエントリを指定することができます。値は Vite プロジェクトルートからの相対的な fast-glob パターン か、パターンの配列でなければいけません。これによりデフォルトのエントリの推論が上書きされます。optimizeDeps.entries
が明示的に定義されている場合、デフォルトでは node_modules
と build.outDir
フォルダのみが無視されます。他のフォルダを無視したい場合は、最初の !
でマークした無視パターンをエントリリストの一部として使用できます。
optimizeDeps.exclude #
- 型:
string[]
事前バンドルから除外する依存関係。
CommonJS
CommonJS の依存関係を最適化から除外してはいけません。ESM の依存関係が最適化から除外されているが、ネストされた CommonJS の依存関係がある場合は、CommonJS の依存関係を optimizeDeps.include
に追加する必要があります。例:
export default defineConfig({
optimizeDeps: {
include: ['esm-dep > cjs-dep'],
},
})
optimizeDeps.include #
- 型:
string[]
デフォルトでは、リンクされたパッケージのうち node_modules
の外にあるものは事前バンドルされません。このオプションを使用してリンクされたパッケージを強制的に事前バンドルします。
optimizeDeps.esbuildOptions #
依存関係のスキャンと最適化の際、 esbuild に渡すオプション。
いくつかのオプションは、変更すると Vite の依存関係最適化と互換性がなくなるため、省略されています。
external
も省略されています。Vite のoptimizeDeps.exclude
オプションを使用してくださいplugins
は Vite の依存関係プラグインとマージされます
optimizeDeps.force #
- 型:
boolean
true
に設定すると、前にキャッシュされた最適化された依存関係を無視して、依存関係の事前バンドルをするよう強制します。