在将请求发送到AMD模块的服务器之前,是否可以修改dojo AMD加载程序使用的请求URL?我想附加一个带有版本号的请求参数. 我们试图解决的问题是我们希望浏览器缓存我们的javascript文件
我们试图解决的问题是我们希望浏览器缓存我们的javascript文件,除非更新应用程序的版本.如果我们可以在请求的URL中添加版本号,我认为我们应该能够这样做.
路径配置属性似乎适用于单个模块,而cacheBust可用于所有模块. Example 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"
路径方法的打嗝是尾随的“.js”,但出于版本控制的目的,我不认为这是一个问题,因为URL仍然是您想要的唯一方式.