Rsbuild Types
本章节描述了 Rsbuild 提供的一些类型定义。
RsbuildInstance
Rsbuild 实例的类型,对应 createRsbuild 方法的返回值。
import type { RsbuildInstance } from '@rsbuild/core';
let rsbuild: RsbuildInstance;
RsbuildConfig
Rsbuild 配置的类型。
import type { RsbuildConfig } from '@rsbuild/core';
const config: RsbuildConfig = {
// ...
};
你也可以引用 Rsbuild 配置中各个字段的类型定义:
import type {
DevConfig,
HtmlConfig,
ToolsConfig,
SourceConfig,
ServerConfig,
OutputConfig,
SecurityConfig,
PerformanceConfig,
ModuleFederationConfig,
} from '@rsbuild/core';
NormalizedConfig
Rsbuild 配置归一化后的类型,对应 getNormalizedConfig 方法的返回值。
import type { NormalizedConfig } from '@rsbuild/core';
const config: NormalizedConfig = api.getNormalizedConfig();
你也可以引用归一化后的 Rsbuild 配置中各个字段的类型定义:
import type {
NormalizedDevConfig,
NormalizedHtmlConfig,
NormalizedToolsConfig,
NormalizedSourceConfig,
NormalizedServerConfig,
NormalizedOutputConfig,
NormalizedSecurityConfig,
NormalizedPerformanceConfig,
NormalizedModuleFederationConfig,
} from '@rsbuild/core';
NormalizedEnvironmentConfig
指定环境下的 Rsbuild 归一化配置类型,对应 getNormalizedConfig({ environment })
方法的返回值。
import type { NormalizedEnvironmentConfig } from '@rsbuild/core';
const config: NormalizedEnvironmentConfig = api.getNormalizedConfig({
environment,
});
RsbuildContext
Rsbuild 实例中 context 属性的类型定义。
import type { RsbuildContext } from '@rsbuild/core';
const context: RsbuildContext = rsbuild.context;
RsbuildPlugin
Rsbuild 插件的类型。
import type { RsbuildPlugin } from '@rsbuild/core';
const myPlugin: RsbuildPlugin = {
name: 'my-plugin',
setup() {},
};
RsbuildPluginAPI
Rsbuild 插件中,setup 函数传入的 api 对象的类型。
import type { RsbuildPluginAPI } from '@rsbuild/core';
const myPlugin = {
name: 'my-plugin',
setup(api: RsbuildPluginAPI) {},
};
RsbuildTarget
Rsbuild 构建产物的类型。
import type { RsbuildTarget } from '@rsbuild/core';
CreateRsbuildOptions
createRsbuild 方法的入参类型。
import type { CreateRsbuildOptions } from '@rsbuild/core';
InspectConfigOptions
rsbuild.inspectConfig 方法的入参类型。
import type { InspectConfigOptions } from '@rsbuild/core';
Rspack
包含 @rspack/core
导出的所有类型,比如 Rspack.Configuration
import type { Rspack } from '@rsbuild/core';
const rspackConfig: Rspack.Configuration = {};
Others
- OnExitFn
- OnAfterBuildFn
- OnAfterCreateCompilerFn
- OnAfterStartDevServerFn
- OnAfterStartProdServerFn
- OnBeforeBuildFn
- OnBeforeStartDevServerFn
- OnBeforeStartProdServerFn
- OnBeforeCreateCompilerFn
- OnCloseDevServerFn
- OnDevCompileDoneFn
- ModifyRsbuildConfigFn
- ModifyBundlerChainFn
- ModifyRspackConfigFn
- TransformFn,
- TransformHandler
- more...