6

我正在使用 webpack 构建我的反应应用程序。我只是想知道是否有生成具有脚本选项卡的 html 文件名中带有版本号的方法,例如 .

我试图探索 HtmlWebpackPlugin 但一无所获。谁能给我一个方向,是否有可用的插件来执行此操作,或者我必须编写自己的脚本。

谢谢

4

3 回答 3

4

履行@Manis 回答我想提供有关此解决方案的更完整说明。

它可以通过output.filename替换设置来实现。

{
    entry: ['./your/entry.js'],
    output: {
        path: path.resolve(__dirname, 'dist'),
        filename: '[name].[contenthash].bundle.js', // Line of interest
        publicPath: '/'
    },
    /* ... */
}

替换将根据[contenthash]资产的内容添加唯一的哈希。当资产的内容发生变化时,[contenthash]也会发生变化。

更多选项和示例在这里

于 2019-08-07T12:08:45.713 回答
2

在输出文件的名称中使用[hash]在这里查看更多详细信息。

PS:index.html就我在项目中遇到的情况而言,您应该有正确的文件名

于 2017-05-15T18:17:03.750 回答
1

如果这里的问题是如何使用您的版本package.json,我遇到了同样的问题并通过以下方式解决了它:

将此添加到您的 webpack.config.js

var PACKAGE = require('./package.json');
var version = PACKAGE.version;

然后您可以将版本附加到您的文件中:

  output: {
    ...
    filename: `myLibrary-${version}.js`
    ...
  }
于 2021-02-19T18:14:59.893 回答