2015-03-31 45 views
0

在我的node.js應用程序中,我從一個文件夾中加載模塊,並將它們放入一個數組中。現在我做手工這樣如何讀取node.js目錄中的文件?

var sitesList = [ 
    require('./js/sites/A.js'), 
    require('./js/sites/B.js'), 
    require('./js/sites/C.js') 
]; 

,但隨着時間的推移,我不希望將文件名添加到這個列表,每次我添加一個新的模塊。我怎麼才能循環瀏覽網站文件夾中的所有js文件,並將它們自動添加到數組中?

+1

https://nodejs.org/api/fs.html#fs_fs_readdir_path_callback – 2015-03-31 17:43:03

+0

可以u顯示如何在示例代碼中使用它? – omega 2015-03-31 17:44:05

+1

谷歌破碎了嗎? – Qix 2015-03-31 17:44:58

回答

2
var normalizedPath = require("path").join(__dirname, "js/sites"); 
var sitesList = []; 
var fs = require("fs"); 
fs.readdirSync(normalizedPath).forEach(function(file) { 
    sitesList.push(require("./js/sites/" + file)); 
}); 

你也可以看看這個模塊:

https://github.com/felixge/node-require-all