创造一个满足的空承诺?

时间:2016-06-28 13:54:51

标签: javascript node.js

我有一个包装器,它捕获一个promise的最后结果,格式化它并输出数据:

req.resolve = (promise) => {
    return promise.then(() => {
            res.json(req.user);
        }).catch(Sequelize.ValidationError, err => {
        // respond with validation errors
        return res.status(422).send(err.errors);
    }).catch(err => {
        // every other error
        return res.status(400).send({ message: err.message });
    });
};

在一个视图中,我没有承诺,所有发生的事情是auth-function触发器添加req.user并触发done()

我尝试添加这样的承诺,但它没有得到解决。

app.get('/user/me', auth,
    (req, res, next) => {
        req.resolve(new Promise());
    });

1 个答案:

答案 0 :(得分:33)

Promise构造函数需要执行函数作为参数。将Promise.resolve()替换为new Promise()