私はfirebaseでホストされているAngular(現在v.4)アプリケーションのサービス担当者を生成するためにGoogleのSW Precacheを使用しています。 Angular cliを使用して分散ファイルを生成しています。それは私のアプリを展開する時間が来るとき、私は、次のコマンドを使用します。問題キャッシュ破損サービス担当者index.htmlファイル
module.exports = {
staticFileGlobs: [
'dist/**.css',
'dist/**/**.png',
'dist/**/**.svg',
'dist/**.js'
],
stripPrefix: 'dist',
root: 'dist/',
navigateFallback: '/index.html',
runtimeCaching: [
{
urlPattern: /index\.html/,
handler: 'networkFirst'
},
{
urlPattern: /\.js/,
handler: 'cacheFirst'
}, {
urlPattern: /fonts\.googleapis\.com/,
handler: 'fastest'
},
{
default: 'networkFirst'
}
]
};
私は変更を加えて、新しいバージョンを展開する場合、私はキャッシュされ得る:
ng build --prod --aot #build angular app
sw-precache --config=sw-precache-config.js --verbose # generate precache
firebase deploy # Send to firebase
私sw-precache-config.js
ファイルには、次のようになりますindex.htmlファイルを更新するか、ブラウザを閉じても?cachebust=1
のようなURLをURLの最後に追加すると、更新されたindex.htmlファイルを取得できます。最新のindex.htmlがロードされないというプロセスや設定で間違っていることがありますか?
トリックを行うように見えました!それが価値あるものであれば、私は/index.htmlにも同じ "no-cache"を追加しましたが、今は変更がほぼ瞬間的であるようです – jloosli