2012-10-03 61 views
1

我正在開發一個應用程序,我們需要動態加載(不要問)angular.js和我們的js文件(directives.js,controllers .js等)。我將<script>標籤插入到angular和我們的js文件的DOM中,並發現當您這樣做時,腳本文件將異步加載。由於更大的angular.js文件尚未返回,因此我得到的關於angular的錯誤未被定義。我可以檢查以確保角度已完成加載並可以使用

有沒有人知道角加載並準備好使用?我的第一個想法是看看angular是否被定義,如typeof angular != 'undefined'。然而,我的擔心是角度將被定義,但尚未完全設置,我會遇到其他錯誤。這是否足以啓動添加模塊並使用angular對象?或者我可以檢查確定它已完成設置的對象本身有什麼東西?作爲一個便箋,我將手動引導應用程序,因此檢查引導後設置的內容對我而言不起作用。任何幫助,將不勝感激。謝謝。

回答

1

如果你使用jQuery,你可以加載鏈的各種外部腳本文件:

$.getScript('js/angular.js', function() { 
    $.getScript('js/controllers.js', function() { 
     $.getScript('js/next.js', function() { 
      // [...] 
     }); 
    }); 
}); 

更多信息:http://api.jquery.com/jQuery.getScript/

課程的潛在缺點是,如果一個腳本加載失敗(阿賈克斯問題,高服務器負載,無論如何),成功回調不會被觸發,後續的腳本將不會被加載。

+0

我不知道getScript()方法。這適用於我所需要的。謝謝! – dnc253

相關問題