close
  • 简体中文
  • resolve.mainFields

    • 类型: string[]
    • 版本: >= 1.5.9

    控制用于定位包入口文件的 package.json 字段优先级。Rspack 在解析 npm 包入口时,会按该列表的顺序依次尝试这些字段。

    Tip

    resolve.mainFields 是 Rspack 提供的配置,参考 Rspack - resolve.mainFields 了解更多。

    默认值

    • output.target 配置为 'web', 'web-worker',或未指定时,默认值为 ["browser", "module", "main"]
    • output.target 配置为 'node',默认值为 ["module", "main"]

    基础示例

    resolve.mainFields 配置的值会覆盖 Rsbuild 的默认值:

    rsbuild.config.ts
    export default {
      resolve: {
        mainFields: ['custom', 'module', 'main'],
      },
    };

    多环境

    为不同 environments 配置不同的 mainFields

    rsbuild.config.ts
    export default {
      environments: {
        web: {
          resolve: {
            mainFields: ['custom', 'browser', 'module', 'main'],
          },
        },
        node: {
          resolve: {
            mainFields: ['custom', 'module', 'main'],
          },
        },
      },
    };