2013-03-12 75 views
2

如果我有2個.js文件(A.js,B.js)並且它們每個都有自己的依賴關係。Javascript Require.js依賴關係

A依賴於:C.js,D.js,E.js B依賴於:C.js,F.js,G.js

A和B具有C作爲共同依賴。如果A和B都加載了Require.js,C.js是否會被加載兩次?

回答

4

C.js只會加載一次,只要它在A.js和B.js.中使用相同的名稱加載。

你可以做的另一種有用的東西如下:

require.config({ 
    "paths": { 
     "C": "/somewhere/js/C-v1.0.0.js" 
     } 
    }); 

如果再需要A和B,A和B,您可以:

require(["C"], function(C) { 
} 

這樣,如果該位置或版本的C變化,你只需要在一個地方改變它。

+0

謝謝!還有一件事,當它執行了預期的代碼時,它是否卸載了腳本,還是保留它直到頁面關閉? – tk66 2013-03-12 13:16:01

+0

腳本在頁面關閉之前一直可用。 – SteveP 2013-03-12 13:20:49