lib.banner

  • 类型:
type Banner = {
  js?: string;
  css?: string;
  dts?: string;
};
  • 默认值: {}

在每个 JavaScript、CSS 或 DTS 输出文件顶部注入内容。

对象类型

banner.js

  • 类型: string
  • 默认值: undefined

在每个 JavaScript 输出文件顶部注入内容。

banner.css

  • 类型: string
  • 默认值: undefined

在每个 CSS 输出文件顶部注入内容。

banner.dts

  • 类型: string
  • 默认值: undefined

在每个 DTS 输出文件顶部注入内容。

注意事项

JavaScript 和 CSS 文件中的 banner 内容是基于 Rspack 的 BannerPlugin 实现的。你需要注意以下几点:

  • 默认启用了 raw: true,所以 banner 内容会作为原始字符串注入,而不是包裹在注释中。因此如果你想注入注释,需要自己添加 /**/ 或其他注释语法。
  • stage 选项被设置在 JavaScript 和 CSS 文件优化之后的阶段,从而防止 banner 内容被优化掉。

自定义 Banner 内容

如果上述默认设置无法满足你的需求,你可以通过 tools.rspack.plugins 自定义添加一个带有相应选项的 BannerPlugin 实例。

rslib.config.ts
export default {
  lib: [
    {
      // ...
      tools: {
        rspack: {
          plugins: [
            new rspack.BannerPlugin({
              // ... options
            }),
          ],
        },
      },
    },
  ],
};
WARNING

DTS 文件中的 banner 内容处理方式与 JavaScript 和 CSS 输出文件不同。它是直接使用文件系统 API 写入的,所以设置 BannerPlugin 不会对其产生影响。