Nic*_*ore 5 javascript css angular
每当我们发布新版本的Angular App时,该页面将不会为用户加载,除非用户清除其缓存。它只会使我们的装载机永远旋转并被卡住index.html。
在chrome控制台中,有一个错误消息,指出styles.css-hashMIME类型为('text / html'),而不是受支持的样式表MIME类型。请注意,我也已经看到这种情况发生在javascript文件中,包括main.js-hashfrom角。
如果我们shift-click refresh还是ctrl F5以清除缓存加载新styles.css-newhash和页面将加载。
我在angular.json(我们使用的是角度7)中引用了样式表,但在index.html中没有引用。
请注意,与此类似的大多数其他问题建议更改为angular.json或中的相对路径,以不引用中的链接文件,index.html而改为使用angular-cli.json或中的链接文件angular.json。这些解决方案均无效。
我们不使用角度服务人员。
它是网络服务器,而不是Angular。由于#hash已更改,因此先前的文件不再存在。
网络服务器最有可能显示一个Page not found也称为404页面的页面,该页面的模仿程度为text/html,因为它是网页。
如果需要,您需要清除Cloudfront / Fastly / Varnish等缓存服务上的缓存。
您也no-cache可以在页面上添加标题,但是不建议这样做,最好根据发布/更新频率设置比标准时间更短的缓存时间。
您实际上应该从生产文件中删除#hash部分,以在生产服务器上不出现此问题。然后,缓存的文件将起作用,直到它们被清除为止,新文件将开始运行。