Angular:在构建期间向资产中的文件添加哈希

Ahm*_*bib 7 versioning hash build typescript angular

我一直在寻找解决方案,但还没有找到任何有用的东西。

问题: 我有一个 angular 应用程序,并且在我的资产文件夹中添加了自定义样式和脚本。我的资产文件夹的位置是src->assets。我使用ng build --prod --output-hashing=all此命令构建了我的项目,但此命令的问题在于它仅对组件中使用的组件和图像进行哈希处理,但所有其他文件(例如CSS、js 文件和由 CSS 添加的图像)在构建中未进行哈希处理.

由于持续发布,它在客户方面造成问题,有时浏览器不会刷新新部署版本的 CSS、JS 文件,并且他们抱怨样式和功能不起作用。

我尝试过的: 我尝试了很多我上面提到的事情。

  1. ng build --prod
  2. output-hashing

但它们都没有对我有益。我想要的只是让我的自定义 css 和 js 文件在构建过程中得到散列。有什么解决办法吗?

请随时提出任何其他需要或我在我的问题中遗漏的问题

*编辑: * 类似的问题已在这里提出但尚未得到正确回答。

Gid*_*don -2

资产文件夹中的资产不会仅对根目录中的文件进行哈希处理。

如果您希望使用 --output-hashing=all 对文件进行哈希处理,请将它们放在根目录中,如下所示:

在 angular.json 中的 asset:[]

"assets": [
              "src/file.css",
              "src/file.js",
              "src/file.png",
              "src/assets",
              {
                "glob": "**/*",
                "input": "some/path",
                "output": "/"
              }
            ],
Run Code Online (Sandbox Code Playgroud)

文件.css。file.js、file.png 和 some/path 中的所有文件将被复制到 dist/yourProjectName 并使用其内容的哈希值进行哈希处理。资产中的所有文件将保持原样。