簡體   English   中英

確定組合的js文件中包含哪些腳本

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM