2015-06-09 55 views
0

我對使用AMD編寫JavaScript代碼頗爲陌生。我停留在搞清楚如何在一個文件中寫入多個功能:在AMD javascript模塊中編寫多個函數

define(function(){ 
    return { 
    and: function(a,b){ 
     return (a&&b); 
    } 
    }; 

} 

); 

我試着按以下方式寫另一功能plus

define(function(){ 
    return { 
    plus: function(a,b){ 
     return (a+b); 
    } 
    }; 

} 

); 

但是當我使用咕嚕進行測試,它是無法檢測到功能加

+0

你想要什麼?定義2個_spearate_函數或具有兩個函數的_one_對象? –

+0

2個獨立的函數 – user1692342

回答

2

您應該將每個模塊放在它自己的文件中。至少需要JS(你使用的是?)通過它的文件名(不包含.js)來確定模塊名稱。

因此,坐在/modules/A.js中的文件將具有模塊名稱「modules/A」。

如果你真的想在一個文件中定義多個模塊,您可以在這樣一個更明確的方式做到這一點:

define("A", [], function() { return ...whatever... }); 
define("B", [], function() { return ...whatever... }); 

編輯:

定義有兩個功能一個模塊你可以使用不同的模式。對於單身(即沒有「班級」),我通常做這樣的事情:

define(function() { 
    var myModule = { 
     fn1: function() { .... }, 
     fn2: function() { .... } 
    }; 
    return myModule; 
}); 
+0

如果我想要一個具有2個函數的對象,您是否也可以提供一個示例? – user1692342

相關問題