Node.js 如何处理res.render';s回调

Node.js 如何处理res.render';s回调,node.js,express,Node.js,Express,我试图从文档中找出如何正确处理Express中res.render的可选回调中的错误(例如坏模板) 我对它的调用与文档中的示例几乎相同,并在某些情况下使用它将额外数据附加到渲染输出中 res.render('template', undefined, (err, html) => { if (err) // then what? var processed = process(html) res.send(proces

我试图从文档中找出如何正确处理Express中
res.render
的可选回调中的错误(例如坏模板)

我对它的调用与文档中的示例几乎相同,并在某些情况下使用它将额外数据附加到渲染输出中

res.render('template', undefined, (err, html) => {
            if (err) // then what?
            var processed = process(html)
            res.send(processed)
        })
报告说:

回调,一个回调函数。如果提供,该方法将返回可能的错误和呈现的字符串,但不执行自动响应。当发生错误时,该方法在内部调用next(err)

但似乎获得正确行为的唯一方法是,如果我能
next(err)
自己在回调中。有人能告诉我当文档说下一步(err)将被自动调用时,他们在这里想说什么吗?

Expressjs在错误处理方面有很好的技巧。因此,如果存在错误,您可以抛出一个错误:

res.render('template',未定义,(err,html)=>{
如果(err)抛出新错误(“渲染时出错”);
var processed=process(html)
res.send(已处理)

});我很欣赏这一点,并且我使用类似的方法捕获错误。然而,我的问题是,当文档说:“当一个错误发生时,该方法在内部调用next(err)”,这表明我们不需要抛出我们自己的错误时,它在谈论什么。