配置选项参考
externals
- 类型:
ExternalFn | boolean | string | RegExp | Array<string | RegExp> | Record<string, string>
- 必填:
false
配置外部依赖项。示例
logLevel
- 类型:
"TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR" | "FATAL" | "OFF"
- 必填:
false
- 默认值:
"WARN"
设置日志级别。
nodeBuiltins
- 类型:
boolean
- 必填:
false
是否排除 Node.js 内置模块。示例
externalizeDeps
- 类型:
Array<string | RegExp>
- 必填:
false
指定需要排除的打包依赖项。示例
externalGlobals
- 类型:
(globals: Record<string, any>) => rollup.Plugin
- 必填:
false
解决 IIFE 打包问题(Rollup Issue #3188)。示例
rollback
- 类型:
boolean
- 必填:
false
是否回退到旧版实现。
interop
- 类型:
"auto" | undefined
- 必填:
false
控制 Vite 的默认构建策略调整。示例
enforce
- 类型:
'pre' | 'post'
- 必填:
false
设置插件执行顺序。可选值:pre
(前置)或 post
(后置)。参考 Vite 插件顺序。
cwd
- 类型:
string
- 必填:
false
- 默认值:
process.cwd()
设置解析 cacheDir
相对路径时的当前工作目录。
cacheDir
- 类型:
string
- 必填:
false
- 默认值:
${cwd}/node_modules/.vite_external
缓存目录路径。
[mode: string]
- 类型:
BasicOptions
- 必填:
false
为特定模式配置外部依赖项。示例
TypeScript 类型定义
typescript
import type { NullValue, Plugin as RollupPlugin } from 'rollup';
import type { ConfigEnv } from 'vite';
import type { LogLevel } from 'vp-runtime-helper';
export type ExternalFn = (
source: string,
importer: string | undefined,
isResolved: boolean
) => string | boolean | NullValue;
export type ModuleNameMap = Record<string, string> | ((id: string) => string);
export type { LogLevel } from 'base-log-factory';
export interface BasicOptions {
/**
* 解析 `cacheDir` 路径时的当前工作目录。
* @default `process.cwd()`
*/
cwd?: string;
/**
* 缓存目录路径
* @default `${cwd}/node_modules/.vite_external`
*/
cacheDir?: string;
/**
* 外部依赖项配置
*/
externals?:
| ExternalFn
| boolean
| string
| RegExp
| Array<string | RegExp>
| Record<string, string>;
/**
* 日志级别配置
*/
logLevel?: LogLevel;
}
export interface Options extends BasicOptions {
/**
* 按模式配置的外部依赖项
*/
[mode: string]: BasicOptions | any;
/**
* 回退到旧版实现
*/
rollback?: boolean;
/**
* 控制 Vite 的默认行为
*/
interop?: 'auto';
/**
* 插件执行顺序("pre" 或 "post")
*/
enforce?: 'pre' | 'post';
/**
* 是否排除 Node.js 内置模块
*/
nodeBuiltins?: boolean;
/**
* 需要排除的打包依赖项
*/
externalizeDeps?: Array<string | RegExp>;
/**
* 解决 Rollup#3188 问题(https://github.com/rollup/rollup/issues/3188)
*/
externalGlobals?: (globals: ModuleNameMap) => RollupPlugin;
}
export interface ResolvedOptions extends Options, ConfigEnv {
cwd: string;
cacheDir: string;
}