AMDモジュールのリクエストがサーバーに送信される前に、Dojo AMDローダーが使用するリクエストURLを変更することはできますか? リクエスト パラメータにバージョン番号を追加したいと考えています。
私たちが解決しようとしている問題は、アプリケーションのバージョンが更新されない限り、javascript ファイルがブラウザーによってキャッシュされるようにすることです。要求された URL にバージョン番号を追加できれば、それが可能になるはずです。
AMDモジュールのリクエストがサーバーに送信される前に、Dojo AMDローダーが使用するリクエストURLを変更することはできますか? リクエスト パラメータにバージョン番号を追加したいと考えています。
私たちが解決しようとしている問題は、アプリケーションのバージョンが更新されない限り、javascript ファイルがブラウザーによってキャッシュされるようにすることです。要求された URL にバージョン番号を追加できれば、それが可能になるはずです。
paths
config プロパティは個々のモジュールで機能するcacheBust
ようで、すべてのモジュールで使用できます。例 jsfiddle。
<script>
var dojoConfig = {
paths: {
// version a single file by using path with version number
"aa": "mylib-aa.js?v=1.0",
// standard path, no explicit versioning
"bb": "mylib-bb"
},
// use v=1.0 for ALL loaded modules
cacheBust: "v=1.0",
waitSeconds: 10
};
</script>
<script src="https://ajax.googleapis.com/ajax/libs/dojo/1.8.3/dojo/dojo.js"></script>
<script>
require(["aa", "bb"], function () {});
</script>
与える:
"NetworkError: 404 Not Found - https://ajax.googleapis.com/ajax/libs/dojo/1.8.3/dojo/mylib-aa.js?v=1.0.js&v=1.0"
"NetworkError: 404 Not Found - https://ajax.googleapis.com/ajax/libs/dojo/1.8.3/dojo/mylib-bb.js?v=1.0"
このpaths
アプローチの問題点は末尾の「.js」ですが、URL は希望どおりに一意であるため、バージョン管理の目的では問題にはならないと思います。