.hmtlファイルまたは.jsファイルでコードを変更しても、ブラウザーは古いコードをレンダリングし、新しいコードの変更はブラウザーの結果に表示されません。
たとえば、次の2行のコードを.htmlファイルに追加します。
<div class="control-group">
<label class="control-label">First Name</label>
<div class="controls readonly">
{{profile.FirstName}}
</div>
</div>
<div class="control-group">
<label class="control-label">Last Name</label>
<div class="controls readonly">
{{profile.LastName}}
</div>
</div>
その後、次のことを行います。
私は何を間違えていますか?
ブラウザでF12キーを押して、開発者ツールを起動します。キャッシュを無効にします。ページをリロードします。
開発ツールを使用してキャッシュが無効になっていることを確認する以外に、Web.config
file and tell IISキャッシュしないためにAngularファイル:
<configuration>
<!-- Disable IIS caching for directories containing Angular templates and scripts -->
<location path="app">
<system.webServer>
<staticContent>
<clientCache cacheControlMode="DisableCache"/>
</staticContent>
</system.webServer>
</location>
...
</configuration>
My Angularルートディレクトリはapp/
。ファイル構造に応じて変更する必要がある場合があります。
TypeScriptのみ!
Tsconfig.jsonに追加…
"compileOnSave": true,
開発ツールでキャッシュを無効にしてみてください:
chromeでdevToolsを開き、[ネットワーク]タブを選択し、[ネットワーク]タブで[キャッシュを無効にする]のチェックを外してページをリロードします。
Aspnetcore環境変数を運用環境から開発環境に変更する必要があります。 公式ウェブサイト から:
...環境変数を設定して、ASP.NETに開発モードで実行するように指示します。
Linuxを使用している場合は、スーパーユーザーとして実行する必要があります。つまり.
Sudo export ASPNETCORE_ENVIRONMENT=Development
変数の値は、再起動後にProduction
に戻る場合があります。複数の環境で作業する場合は、launchSettings.json
ファイルでそれらを定義することをお勧めします。
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:40088/",
"sslPort": 0
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"IIS Express (Staging)": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Staging"
}
}
}
}
環境について読む こちら :
私にとって、以前の答えはどれもうまくいきませんでした。私はChromeを使用していましたが、更新を表示できる唯一の方法はシークレットウィンドウを開くことでした。私の通常のブラウザウィンドウは、何らかの理由で、最新のアセットを取得できません。
キャッシュをクリアし、devtoolsのキャッシュを無効にし、ハードリフレッシュを試みましたが、うまくいきませんでした。私がそれを修正できた唯一の方法は、DNSキャッシュをクリアすることでした。詳細はこちらのリンクをご覧ください。
コンピューターとWebブラウザーのDNSキャッシュをクリアする方法
コマンドラインを使用して、次のようにします。
Windows 7以前
ipconfig /flushdns
Windows 8
ipconfig /flushdns
OSX(ヨセミテ、エルキャピタン、およびシエラ)
Sudo dscacheutil -flushcache
Sudo killall -HUP mDNSResponder
または、Visual Studio 2013でBrowserlinkを使用してページを自動的にリロードできます
http://www.asp.net/visual-studio/overview/2013/using-browser-link
クライアントコードを再コンパイルするには、コマンドyarn webpack:build
を実行する必要があります。それ以外の場合、.HTML
、.json
、.ts
ファイルの変更/更新は反映されません。
For Client-side (Browser) caching of static files in dev enviornment
'http://[your-Host/localhost]:[specified port of your application]/app/home/home-account.js
に移動します。これにより、内容が表示されます。次に、アプリケーションのホームページ、この場合は'http://[your-Host/localhost]:[specified port of your application]/'
に再度移動しますFor Server-side (IIS-Express) caching of static files in dev enviornment
visit IIS Express appcmdコマンドラインユーティリティ。私の場合、appcmdはこのパスにある「C:\ Program Files(x86)\ IIS Express\appcmd.exe」にあります。その後、SITE list
およびSITE delete
コマンドを使用しますiisexpressにキャッシュされた一時ファイルを削除します。
また、IEここで言及されている: Visual Studio 2013の古いバージョンの.jsファイルのキャッシュ に固有のソリューションもあります。
これは、ブラウザにキャッシュが保存されているために発生します。アプリケーションを実行する前に、ブラウザに保存されているキャッシュとCookieを削除できます。
IIS manager.を介してコンテンツを期限切れにするようにHTTP応答ヘッダーを設定します。
https://www.iis.net/configreference/system.webserver/staticcontent/clientcache