2016-11-17 37 views
1

我正在使用Node/Express。如何從單個服務器端模塊(js文件)導出2個方法?

我有一個服務器,index.js。我有一個不同的js模塊,名爲validmoves.js。

通常情況下,我能說出口的單一功能我在一個模塊中定義:

module.exports = shuffleFunction; 

,然後要求其在快遞服務器上的文件,index.js,說:

let shuffle = require('./routes/shuffleRoute'); 

如何從模塊中導出2個功能?其中一個實際上是一個輔助功能。

回答

2

您可以從一個模塊導出多個功能:

module.exports.shuffleFunction = shuffleFunction 
module.exports.somethingElse = somethingElse 

使用它在index.js

let shuffle = require('./route/shuffleRoute'); 
shuffle.shuffleFunction(); 
shuffle.somethingElse(); 

見的例子here

3

您可以定義要導出的模塊的名稱並在導入時指定。這將是這個樣子:

// shuffleRoute.js 

module.exports.shuffleFunction = shuffleFunction; 
module.exports.someHelperFunction = someHelperFunction; 

,並在你的其他的文件:

// index.js 

let shuffle = require('./routes/shuffleRoute').shuffleFunction; 
let helper = require('./routes/shuffleRoute').someHelperFunction; 
+0

所以,如果我不想訪問的index.js服務器輔助功能,是否有任何需要出口它? shuffle函數是否能夠使用模塊中定義的幫助函數? – McFiddlyWiddly

+0

@McFiddlyWiddly是的!您只需要導出要在另一個文件中顯式調用的函數。如果您不需要對其定義的文件範圍之外的輔助函數進行任何顯式調用,那麼您就不需要導出它。你洗牌功能應該工作得很好 - 試試吧! –

相關問題