RequireJSは、必要なjavascriptファイルをキャッシュする何かを内部的に実行しているようです。必要なファイルの1つに変更を加えた場合、変更を適用するには、ファイルの名前を変更する必要があります。
ファイル名の最後にクエリ文字列パラメータとしてバージョン番号を追加する一般的なトリックは、requirejsでは機能しません<script src="jsfile.js?v2"></script>
私が探しているのは、スクリプトファイルが更新されるたびに名前を変更することなく、RequireJSに必要なスクリプトのこの内部キャッシュを防ぐ方法です。
クロスプラットフォームソリューション:
現在urlArgs: "bust=" + (new Date()).getTime()
、開発中の自動キャッシュバスティングとurlArgs: "bust=v2"
、更新された必要なスクリプトをロールアウトした後にハードコードされたバージョン番号をインクリメントする本番環境に使用しています。
ノート:
@Dustin Getzは最近の回答で、Javascriptファイルがこのように継続的に更新されると、ChromeDeveloperToolsがデバッグ中にブレークポイントをドロップすると述べています。回避策の1つはdebugger;
、ほとんどのJavascriptデバッガーでブレークポイントをトリガーするコードを記述することです。
サーバー固有のソリューション:
NodeやApacheなどのサーバー環境でより適切に機能する可能性のある特定のソリューションについては、以下の回答のいくつかを参照してください。