我知道如何使用compiler.clearCache()。但是,它似乎只适用于HTML模板。通常,在我更新组件的TS之后,浏览器仍在使用旧的javascript。目前我必须明确清除浏览器缓存,然后用户也可能必须这样做。
Angular2 / 4中是否有更好的方法来确保使用更新的ts / js文件?
答案 0 :(得分:0)
在浏览器设置中禁用缓存不是一个好方法,因为您不想为未更改的文件访问服务器。有一些原因告诉浏览器我的代码已更新,因此浏览器可以从服务器获取最新的代码。我是一个webpack用户,webpack给你机会散列你的文件名,只有那些经过重新编译,例如你有a和b正在开发b已更新到webpack将给这个文件的新哈希和未更改的文件填充有相同的名称所以下次使用访问浏览器他或她将从缓存和b从servver获取,因为文件名已被更改
output: {
path: helpers.root('dist'),
filename: "[name].[chunkhash].js",
chunkFilename: "[name].[chunkhash].js"
},