【问题标题】:Cache buster in angular 2角度 2 中的缓存破坏者
【发布时间】:2017-02-28 10:26:58
【问题描述】:

我正在开发一个 Angular 2 项目,我希望我的浏览器在每次部署后从服务器请求新文件。我怎样才能做到这一点?

注意事项:

我在 apache 上的 .htaccess 文件中启用缓存。

我目前正在使用 angular cli 1.0.0-beta.22-1。

编辑: 每次我从 Angular cli 运行“ng build --prod”时,我希望它以某种方式为所有编辑的文件添加像 filename.js?ver=1.0.2 这样的缓存破坏器

【问题讨论】:

  • 尝试将 ^^this 添加到您的索引页
  • @AmarnathRShenoy 感谢您的评论,但我认为这会完全关闭浏览器缓存,这不是我想要的。我想启用缓存,但是每次我从 Angular cli 运行“ng build --prod”时,我希望它以某种方式添加一个像 filename.js?ver=1.0.2 这样的缓存破坏器。
  • 根据 cmets here 现在存在于 1.6.0 中:允许配置输出哈希 #3885 github.com/angular/angular-cli/pull/3885 这允许在构建期间通过新的构建命令选项配置输出文件名哈希 - -输出哈希。有四个可能的值: none:不执行散列 media:仅将散列添加到通过 [url|file]-loaders 处理的文件 bundles:仅将散列添加到输出包 all:将散列添加到媒体和包中 none 是默认的发展目标。 all 是生产目标的默认值。

标签: angular browser-cache


【解决方案1】:

根据 cmets here 现在存在于 @angular/cli 1.6.0 中:

允许配置输出哈希 #3885

https://github.com/angular/angular-cli/pull/3885

这允许在构建期间通过新的构建命令选项配置输出文件名哈希

--output-hashing. 

有四个可能的值:

none: no hashing performed
media: only add hashes to files processed via [url|file]-loaders
bundles: only add hashes to the output bundles
all: add hashes to both media and bundles

none 是开发目标的默认值。 all 是生产目标的默认值。

【讨论】:

    【解决方案2】:

    在 angular cli 版本 1.0.0-rc.0 中有一个构建命令:

    --output-hashing=none|all|media|bundles (String) 定义输出文件名缓存清除哈希模式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-03
      • 1970-01-01
      • 2021-12-07
      • 2014-09-01
      • 2020-05-19
      • 2012-03-09
      • 1970-01-01
      • 2012-10-08
      相关资源
      最近更新 更多