lib.autoExtension

  • 类型: boolean
  • 默认值: true

是否根据 format 配置项自动设置 JavaScript 输出文件的扩展名。

默认扩展名

默认情况下,当 autoExtension 设置为 true 时,文件扩展名将会是:

  • package.json 中设置 type: module 时,esm 格式使用 .jscjs 格式使用 .cjs

  • package.json 中设置 type: commonjs 或没有 type 字段时,cjs 格式使用 .jsesm 格式使用 .mjs

autoExtension 设置为 false 时,文件扩展名将默认为 .js

自定义扩展名

你可以将 autoExtension 设置为 false,并使用 output.filename 来自定义 JavaScript 输出文件。

rslib.config.ts
export default defineConfig({
  lib: [
    {
      format: 'cjs',
      autoExtension: false,
      output: {
        filename: {
          js: '[name].cjs',
        },
      },
    },
    {
      format: 'esm',
      output: {
        filename: {
          js: '[name].mjs',
        },
      },
    },
  ],
});