1

最初の .then が何も返さないのに約束を守らないのはなぜですか? 次の関数では、コンソールに次のように表示されます: blablabla ... ID のリスト

これは、最初の .then が実行される前に 2 番目の .then が実行されたことを意味します。

    Model.collection().query(...).fetch().then(function(result) {
        // result is a list of models.
        // I want to run a promise on each of these models in order to add stuff to them
        result.each(function(model) {
            New promise based task on model with .then(function(r) {
                console.log(model.id);
                // with something like:
                model.set('newvalue', r.value);
            });
        });
    }).then(function(result) {
        console.log('blablabla');
        return res.json(result.toJSON());
    }).catch(next);
};
4

1 に答える 1