欢迎来到码农权的博客 MaNongGeGe.|

webpack.BannerPlugin

  • webpack.BannerPlugin 是一个用于在生成的打包文件顶部添加自定义注释或横幅的插件。它通常用于添加版权信息、版本号、作者信息等。

基本配置

  • BannerPlugin 的配置对象可以是一个字符串或一个对象。以下是两种常见的配置方式:

1. 字符串配置

  const webpack = require('webpack');

  module.exports = {
    // 其他配置...
    plugins: [
      new webpack.BannerPlugin('版权所有 (c) 2025 xxx公司');
    ]
  };

在这个例子中,BannerPlugin 会在生成的每个文件的顶部添加 版权所有 (c) 2025 xxx公司 这行注释。

2. 对象配置

  const webpack = require('webpack');

  module.exports = {
    // 其他配置...
    plugins: [
      new webpack.BannerPlugin({
        // banner: string | function 要添加的横幅内容。可以是一个字符串,也可以是一个函数。如果是函数,它将接收文件路径和文件内容作为参数,并返回一个字符串。
        banner: '版权所有 (c) 2025 xx公司',
        // entryOnly: boolean 如果设置为 true,则只在入口文件(entry points)中添加横幅。默认为 false。
        entryOnly: true,
        // raw: boolean 如果设置为 true,横幅内容将不会被包裹在注释中。默认为 false
        raw: false,
        // test:RegExp | string | Array<RegExp | string> 匹配文件的正则表达式、字符串或数组。只有匹配的文件才会添加横幅。
        test: /\.js$/,
        // include: RegExp | string | Array<RegExp | string> 包含的文件或目录。只有包含的文件才会添加横幅。
        include: /src/,
        // exclude: RegExp | string | Array<RegExp | string> 排除的文件或目录。排除的文件不会添加横幅。
        exclude: /node_modules/
      })
    ]
  };

使用函数生成横幅

const webpack = require('webpack');

module.exports = {
  // 其他配置...
  plugins: [
    new webpack.BannerPlugin({
      banner: (file) => {
        return `文件: ${file}\n版权所有 (c) 2025 xxx公司`;
      }
    })
  ]
};

仅在入口文件添加横幅

  const webpack = require('webpack');

  module.exports = {
    // 其他配置...
    plugins: [
      new webpack.BannerPlugin({
        banner: '版权所有 (c) 2023 我的公司',
        entryOnly: true
      })
    ]
  };

使用正则表达式匹配文件

  const webpack = require('webpack');

  module.exports = {
    // 其他配置...
    plugins: [
      new webpack.BannerPlugin({
        banner: '版权所有 (c) 2023 我的公司',
        test: /\.js$/,
        include: /src/,
        exclude: /node_modules/
      })
    ]
  };

总结

  • BannerPlugin 是一个简单但非常有用的插件,可以帮助你在生成的打包文件中添加自定义的注释或横幅。通过灵活的配置选项,你可以精确控制横幅的添加方式和范围。

本文作者:HuangBingQuan

本文链接:https://www.cnblogs.com/bingquan1/p/18700828

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   HuangBingQuan  阅读(18)  评论(0编辑  收藏  举报
历史上的今天:
2022-02-06 小程序的版本
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 不将就 码农权
  2. 2 Bleeding Love 码农权
  3. 3 想你念你 码农权
Bleeding Love - 码农权
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

Not available