我尝试使用此代码块接收文件列表:
var templates;
db.getTemplates(function(err, reply){
templates = reply;
});
来自这段代码,但节点正在抱怨" undefined不是函数",为什么回调未定义?更重要的是,写这个的最佳方式是什么?
function getTemplates(callback){
fs.readdir('views/templates', function(err, reply){
if(err){
callback('there was an error reading the directory: ' + err, null);
} else{
callback(null, reply);
}
});
}
答案 0 :(得分:0)
我发现了我的问题。我不得不在if语句中放置回调来运行代码。例如:
function getTemplates(callback){
fs.readdir('views/templates', function(err, reply){
if(callback){
if(err){
callback('there was an error reading the directory: ' + err, null);
} else{
callback(null, reply);
}
}
});
}