小编Nik*_*iya的帖子

在 Angular 7 中进行生产构建后,缓存破坏有时不起作用

我们的应用程序使用 node.js Core & Angular 7.2 版

我们经常推出 Angular 应用程序的生产版本,以便在一个月内部署 3-4 次更改。

我收到了一些客户的投诉,他们无法看到更改,除非他们清除缓存或在浏览器中硬重新加载页面。

我认为ng build --prod创建了唯一的哈希值,以便处理缓存破坏,但似乎没有发生。

angular.json我有以下用于生产构建的配置

"production": {
  "optimization": true,
  "outputHashing": "all",
  "sourceMap": false,
  "extractCss": true,
  "namedChunks": false,
  "aot": true,
  "extractLicenses": false,
  "vendorChunk": false,
  "buildOptimizer": true,
  "fileReplacements": [
    {
      "replace": "src/environments/environment.ts",
      "with": "src/environments/environment.prod.ts"
    }
   ]
}
Run Code Online (Sandbox Code Playgroud)

运行后ng build --prod它会生成散列文件,它与基于更改的先前版本不同。此外,我已将服务器配置为不缓存index.html. 那么为什么有时用户需要硬重新加载页面或手动清除缓存以获取最新更改?

除了告诉客户清除他们的缓存之外,我还有什么办法可以解决这个问题?

任何建议将不胜感激。

caching browser-cache angular-cache angular-cli angular

6
推荐指数
1
解决办法
2146
查看次数