因此,我試圖使用nodejs express FS模塊迭代我的應用程序中的目錄,將每個文件名存儲在數組中,我可以傳遞給我的快速視圖並遍歷名單,但Im努力這樣做。當我這樣做files.forEach功能環路內的console.log,它打印的文件名就好了,但只要我嘗試做任何事情,如:nodejs express fs迭代文件到數組或對象失敗
var myfiles = [];
var fs = require('fs');
fs.readdir('./myfiles/', function (err, files) { if (err) throw err;
files.forEach(function (file) {
myfiles.push(file);
});
});
console.log(myfiles);
失敗,只是記錄一個空的對象。所以我不確定到底發生了什麼,我認爲它與回調函數有關,但如果有人能夠引導我通過我做錯了什麼,爲什麼它不工作(以及如何使它工作),它會是非常感激。
+1深入挖掘並解釋您應該如何使用回調。 – 2011-06-09 04:03:42
字,正是我需要的,謝謝! – thrice801 2011-06-09 05:41:49
只需使用readdir的同步版本,而不需要等待它完成:[fs.readdirSync](http://nodejs.org/docs/v0.3.1/api/fs.html#fs.readdirSync) – Automatico 2013-04-20 23:49:56