• 简体中文
  • API 参考

    Rstack 提供统一的配置 API,并通过专用子路径重导出 Rsbuild、Rslib、Rstest 和 Rslint 的公开 API。建议优先从这些子路径导入,以统一依赖入口,并确保 API 与 Rstack 集成的工具版本保持一致。

    导入路径

    导入路径内容使用场景
    rstackRstack 配置 API注册各项工具配置
    rstack/app@rsbuild/core 的公开 API构建应用及扩展 Rsbuild
    rstack/lib@rslib/core 的公开 API构建库及扩展 Rslib
    rstack/test@rstest/core 的公开 API编写测试及配置测试项目
    rstack/lint@rslint/core 的公开 API使用 Rslint 预设和插件
    rstack/typesRsbuild 与 Rslib 共用的项目类型为应用和库的源码提供类型
    rstack/test/globalsRstest 全局 API 声明启用全局测试 API 类型
    rstack/test/importMetaimport.meta.rstestImportMeta 声明为源码内测试提供类型

    主入口

    define

    rstack 导入 define,用于在 rstack.config.ts 中注册各项工具配置;详细用法请参阅配置 API

    重导出

    以下工具子路径均会重导出对应 core 包的公开 API。通过这些 Rstack 入口导入,可以让依赖入口和工具版本与 Rstack 集成的工具链保持一致。

    rstack/app

    rstack/app 重导出 @rsbuild/core 的全部公开 API,包括用于创建和控制 Rsbuild 实例的 API。

    import { createRsbuild, mergeRsbuildConfig } from 'rstack/app';

    具体用法请参阅 Rsbuild 核心 API

    rstack/lib

    rstack/lib 重导出 @rslib/core 的全部公开 API,包括用于创建 Rslib 实例和合并 Rslib 配置的 API。

    import { createRslib, mergeRslibConfig } from 'rstack/lib';

    具体用法请参阅 Rslib 核心 API

    rstack/test

    rstack/test 重导出 @rstest/core 的全部公开 API,包括用于定义测试、编写断言、模拟模块和合并测试配置的 API。

    import { describe, expect, test } from 'rstack/test';

    测试 API 请参阅 Rstest 运行时 API,配置辅助 API 请参阅 Rstest 核心 API

    如需了解更多测试相关用法,请参阅测试

    rstack/lint

    rstack/lint 重导出 @rslint/core 的全部公开 API,包括 JavaScript 和 TypeScript 预设以及框架插件。

    import { js, reactPlugin, ts } from 'rstack/lint';

    可用的预设和插件请参阅 Rslint 规则和预设

    TypeScript 类型

    以下纯类型入口用于为 TypeScript 项目补充环境类型声明。请仅将项目需要的入口添加到 tsconfig.jsoncompilerOptions.types 中。

    rstack/types

    rstack/types 提供 Rsbuild 与 Rslib 共用的项目级类型声明,包括 import.meta.env 和静态资源导入的类型。请使用该入口替代 @rsbuild/core/types@rslib/core/types

    tsconfig.json
    {
      "compilerOptions": {
        "types": ["rstack/types", "node"]
      }
    }

    rstack/test/globals

    rstack/test/globals 提供 testexpect 和生命周期钩子等 Rstest API 的全局声明。启用 Rstest 的 globals 选项且测试代码不显式导入这些 API 时,请添加该入口。

    tsconfig.json
    {
      "compilerOptions": {
        "types": ["rstack/test/globals", "node"]
      }
    }

    rstack/test/importMeta

    rstack/test/importMetaImportMeta 增加可选的 rstest 属性,为源码内测试中的 import.meta.rstest 提供类型支持。

    tsconfig.json
    {
      "compilerOptions": {
        "types": ["rstack/test/importMeta", "node"]
      }
    }