2017-04-20 25 views
0

私はcompiler.clearCache()の使い方を知っています。しかし、それはHTMLテンプレートのためだけに働くようです。多くの場合、コンポーネントのTSを更新した後、ブラウザは古いjavascriptを使用しています。現在のところ、ブラウザのキャッシュを明示的にクリアする必要があり、ユーザーはブラウザのキャッシュをクリアする必要があります。Angular2更新されたts/jsファイルを確実に使用する方法は?

更新されたts/jsファイルを確実に使用するために、Angular2/4でより良い方法がありますか?

+0

を変更されているので、彼または彼女はservverからキャッシュおよびBから取得します次回使用訪問ブラウザはWebPACKのと答えです:http://stackoverflow.com/questions/39238163/ cache-busting-suffix/39312174#39312174 – artem

+0

ブラウザ設定でキャッシュを無効にするオプションを使用することもできます。 –

+0

私は顧客にそうするよう求めることはできません。 – ZZZ

答えて

0

ブラウザでのキャッシュを無効にする設定は、変更されていないファイルに対してサーバーにヒットしないようにするため、適切な方法ではありません。ブラウザに私のコードが更新されているので、ブラウザがサーバから最新のコードを取得できる理由はいくつかあります。私はwebpackユーザーです.Webpackは、ファイル名をハッシュする機会を与え、再コンパイルされたものだけを提供します。例えば、開発中です。bはwebpackに更新され、このファイルに新しいハッシュを与えます。名前は、そのファイル名がここに

output: { 
     path: helpers.root('dist'), 
     filename: "[name].[chunkhash].js", 
     chunkFilename: "[name].[chunkhash].js" 
}, 
関連する問題