我正在研究如何在节点中编写文件,我找到了这段代码:
var fs = require('fs');
fs.writeFile("/tmp/test", "Hey there!", function(err) {
if(err) {
return console.log(err);
}
console.log("The file was saved!");
});
现在,在if(err){}
块内,这个console.log(err)
返回到哪里?错误处理如何在节点中工作?
答案 0 :(得分:3)
除了打破回调的逻辑链之外,它基本上什么都不做。
错误处理节点主要是回调,就像你在这里看到的那样。
例如:
var fs = require('fs');
fs.writeFile("/tmp/test", "Hey there!", function(err) {
if (err) {
/* Handle error appropriately */
} else {
/* Code that relies on /tmp/test to exist. */
}
});
答案 1 :(得分:1)
所以基本上,你要对fs.writeFile
说,当它完成调用函数时
function(err) {
if(err) {
return console.log(err);
}
console.log("The file was saved!");
}
通常回调并不关心你返回的内容,所以如果你在那里写错误就返回意味着代码没有继续,所以不打印第二个console.log
。