2015-10-24 77 views
0

我有一個有很多外部依賴的角度網站。其中一些依賴關係僅用於一個狀態,實際上不需要在頁面初始加載時啓動。在Angular中需要時初始化依賴關係?

是否可以推遲加載?

+0

負載的依賴使用服務。你可以使用服務加載facebook庫,這種方式只有在服務被角度注入時纔會發生。 – cgTag

+1

這在技術上可以被視爲脫離主題,如果它開始獲得非現場圖書館的鏈接,但是有一個庫可以處理這個問題。在GitHub上檢查angular-lazyload。 – Claies

回答

-1

你可以通過創建不加載函數動態追加js文件,並把它想的時候:

function loadjsfile(filename){ 
    //if filename is a external JavaScript file 
    var fileref=document.createElement('script') 
    fileref.setAttribute("type","text/javascript") 
    fileref.setAttribute("src", filename) 
} 

召喚:

loadjscssfile("myscript.js") 

Source

+1

這裏的問題是,如果這些JavaScript文件是角度模塊或依賴項,角度將不知道它們在加載時存在,並且將無法訪問它們。 – Claies

+0

這並不回答延遲加載角度模塊的問題 – charlietfl

相關問題