HtmlRspackPlugin

此插件可以创建与 Rspack 产物关联的 HTML 文件。

new rspack.HtmlRspackPlugin(options);
  • options

    • 类型:
    type HtmlRspackPluginOptions = {
      title?: string;
      filename?: string;
      template?: string;
      templateContent?: string;
      templateParameters?: Record<string, string>;
      inject?: 'head' | 'body';
      publicPath?: string;
      scriptLoading?: 'blocking' | 'defer' | 'module';
      chunks?: string[];
      excludedChunks?: string[];
      sri?: 'sha256' | 'sha384' | 'sha512';
      minify?: boolean;
      favicon?: string;
      meta?: Record<string, string | Record<string, string>>;
    };
    • 默认值: {}
    名称类型默认值描述
    titlestring|undefinedundefined构建 HTML 的标题
    filenamestring'index.html'输出的文件名,可以指定子目录,例如 pages/index.html
    templatestring|undefinedundefined模版文件路径,支持 ejs
    templateContentstring|undefinedundefined模版文件内容,优先级大于 template
    templateParametersRecord<string, string>{}传递给模版的参数
    inject'head'|'body'|undefinedundefined产物注入位置
    publicPathstring''script 和 link 标签的 publicPath
    scriptLoading'blocking'|'defer'|'module''defer'现代浏览器支持使用 defer 来异步加载 js,设置为 module 则会添加 type="module" 同时使用 defer
    chunksstring[]|undefinedundefined配置需要注入的 chunk,默认注入所有 chunk
    excludedChunksstring[]|undefinedundefined配置需要跳过注入的 chunk
    sri'sha256'|'sha384'|'sha512'|undefinedundefinedsri hash 算法,默认不开启 sri
    minifybooleanfalse是否启用压缩
    faviconstring|undefinedundefined配置 HTML 图标
    metaRecord<string, string|Record<string, string>>{}配置需要注入 HTML 的 meta
TIP

如果 rspack.HtmlRspackPlugin 提供的配置项无法满足需求,你也可以直接使用社区的 html-webpack-plugin 插件。