我是一个尝试递归读取目录的NodeJS和I#m新手,这是我的代码
var fs = require('fs');
var readDir = function (dir, calback) {
fs.readdir(dir, function (err, files) {
if (err)
console.log(err);
for (var file in files) {
fs.stat(dir + "/" + file, function (err, stats) {
if (err)
console.log(err);
if (stats.isFile()) {
calback(dir + "/" + file);
}
if (stats.isDirectory()) {
walk(file, calback);
}
});
}
});
};这是我的ErrorMessage
C:\Users\Lukas\Desktop\Enide-Studio-05-kepler-win32\ws\PlayerTest\hello-world-server.js:24
if (fs.stats.isFile()) {
^
TypeError: Cannot call method 'isFile' of undefined
at C:\Users\Lukas\Desktop\Enide-Studio-05-kepler-win32\ws\PlayerTest\hello-world-server.js:24:30
at Object.oncomplete (fs.js:107:15)我的错误是什么??
发布于 2014-03-04 05:34:41
遇到错误后,您没有退出函数。
fs.stat(dir + "/" + file, function (err, stats) {
if (err) {
console.log(err);
return; // exit here since stats will be undefined
}
if (stats.isFile()) {
calback(dir + "/" + file);
}
if (stats.isDirectory()) {
walk(file, calback);
}
});https://stackoverflow.com/questions/22157782
复制相似问题