我有以下代码(使用TypeScript编写,但可能是任何JS变体):
this.http.get('configs/config.json').subscribe(...);
基本上,我正在从本地json文件加载配置。我希望对该文件实现缓存打破。
虽然我可以设置我的webpack来修改json文件,添加哈希后缀,但我还需要修改所有引用那些文件的源文件。string-replace-loader
可能会有所帮助,但这样做感觉有点奇怪。另外,在某些情况下,我无法访问发起http调用的代码行(例如,加载类似内容的第三方插件),因此我无法直接修改代码和/或名称(因此内容哈希仅在运行时可知)。
是否有像webpack URL重写之类的东西可以解决这个问题?
configs/config.json?<hash goes here>
,那会怎样呢? 如果哈希值发生改变,它将使查询无效。 您可以使用DefinePlugin
等轻松注入它。 - Juho Vepsäläinenhash = HASH;
的东西并替换了HASH
,那么DefinePlugin
就可以做到这一点。然后你可以像往常一样执行'configs/config.json' + hash
。 - Juho Vepsäläinen