2013-09-25 46 views
4

我不知道爲什麼......RequireJS定義()不調用回調

<script type="text/javascript"> 
    define('test', [], function() { 
     alert('Done') ; 
    }) ; 
</script> 

...不起作用。

我用我自己的框架(如果可用),它使用RequireJS,並呼籲define(name, dependencies, callback) ;用於裝載每個模塊需要一個又一個。 但有時模塊沒有依賴關係,所以dependencies是一個空數組。

而且我知道......

require([], function() { 
    alert('Done') ; 
}) ; 

...工作正常。

你能解釋我爲什麼第一種方法不起作用? 謝謝。

+2

有任何事情需要你'test'模塊?如果不是,則不會被加載(執行)。 – Bergi

+0

是的,只有一次需要(見@Simon Boudrias的回答)。 – Tot

回答

6

直到你需要'測試'模塊,它顯然不會被調用。

<script type="text/javascript"> 
    define('test', [], function() { 
     alert('Done') ; 
    }) ; 
    require(['test'], function() {}); 
</script> 
+0

啊...好的。聽起來相當邏輯。謝謝 ! – Tot