我对node.js的使用较少,而且在处理错误时我并不高兴。我的代码如下所示:
parser.parse(data, function (err, tree) {
if(err){
console.log(err);
res.send(500);
}else{
res.header('Content-Type', 'text/css');
res.send(tree.toCSS());
}
});
我的问题是,如果我的一个较少的文件有语法错误,并抛出异常,则会导致进程崩溃。在try块中包装函数调用并没有帮助。当较少的文件中出现错误时,是否可以更优雅地使过程失败?
答案 0 :(得分:2)
从我在the less.js
source中看到的情况来看,parse()
函数不会因为语法错误而抛出异常,但toCSS()
函数可以。
parser.parse(data, function (parseError, tree) {
var css;
if (parseError) {
console.log(parseError);
res.send(500);
} else {
res.header('Content-Type', 'text/css');
try {
css = tree.toCSS();
res.send(css);
} catch (ex) {
console.log(ex);
res.send(500);
}
}
});