使用命名函数来捕获promises中的错误?

时间:2016-06-29 09:33:39

标签: javascript node.js

我试图这样做:

var error = (reason) => {
        console.log(reason);
    };

//actually other promise
Promise.resolve()
    .catch(error())
    .then(render(req, res));

如何将原因传递给错误函数?

2 个答案:

答案 0 :(得分:1)

使用catch(error)代替catch(error())来提供var error

中定义的功能

答案 1 :(得分:1)

您必须使用catch(error)代替catch(error())

catch method期望函数作为参数。要实际添加命名函数本身,只需键入error即可。如果键入error(),将首先执行该方法。结果,它将记录" undefined"并且,由于函数不返回任何内容,因此将被评估为" undefined"同样。所以你基本上称之为catch(undefined)