[英]Determine what scripts are inside a combined js file
我正在嘗試構建一個Ajax腳本加載器,但是遇到了一個問題,即我將合並文件的片段發送了兩次(例如,jQuery,與其他腳本捆綁在一起,由於需要發送兩次)由一些(ajax)請求的腳本通過網絡發送。
我的第一個想法是,我只將md5塊附加到文件名上,如果請求的腳本與該文件名匹配,則不發送-但這不能很好地擴展.. 100個捆綁腳本。
還有其他建議嗎?
謝謝!
馬特·穆勒(Matt Mueller)
我認為這取決於腳本類型。 我個人將定義可用的庫,然后進行測試以查看是否已定義對象。
這里的WAG示例就在我腦海中(我認為這種方法經常使用會令人發指,但比單獨標識文本要快。)
//javascript loader shell
var loader = function(){
var loadLibrary = function(libraryName, fn){
//your code to verify and download library or collection here
//callback function
return fn();
}
return {
exec: function(libraryName, fn){
if(typeof(eval('window.'+libraryName)) != 'undefined'){
return fn();
} else {
return loadLibrary(libraryName, fn);
}
}
}
}();
//example usage
loader.exec('util', function(){util.test();});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.