typescript - Angular cli 构建版本控制 Json 文件

标签 typescript angular-cli

我从 assets 文件夹中的 json 内容中读取了我的 webapp 所需的大量图像和字符串。这样我就可以通过使它们无效来即时更改它们。

ng build --prod --output-hashing=all 生成一个散列文件,如 ma​​in.06d5672830c816025599.bundle.js。我没有看到 json 文件在 Assets 文件夹中进行了版本控制。

通过更改一些代码,main..js 的哈希值会发生变化,但客户端将缓存已下载的 Json。
每当我更改 Json 时,如何确保缓存在客户端被破坏?

而 main..js 更像是 300KB,即使一小部分代码发生变化,客户端也必须下载。
有没有办法单独散列文件而不是一个 main..js?

最佳答案

Angular build 应该为缓存破坏目的添加哈希。

每次更新时,您只需手动更改 JSON 文件的名称,例如config.json?v=1, config.json?v=2, 等等

每次更新 JSON 文件时更改名称将启用缓存破坏。

grunt 或 gulp 等其他工具可能有更好的选择。

关于typescript - Angular cli 构建版本控制 Json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45982163/

相关文章:

javascript - 字符串不可分配给 onMouseEvent

angular - 如何在 Angular 2 应用程序中扫描二维码?

npm - AppVeyor 构建步骤的时间安排

各种 Promises 实现中失败 `reason` 的 typescript 类型?

javascript - Angular 为 2 的三态复选框

typescript - NextJS : Run a Typescript script on the server

angular - 在 Visual Studio 的测试资源管理器中发现 Protractor/jasmine 测试?

angular - Angular CLI 可以在新组件中自动包含 moduleId 吗?

node.js - Angular 构建 - 未捕获的类型错误 : Cannot read property 'id' of undefined

typescript - 在 TypeScript 类中创建自定义事件