Использование bind для уменьшения ада обратного вызова - PullRequest
0 голосов
/ 29 января 2020

У меня много вызовов данных API. В форме:

app.get('/getSomeData', function(req, res) {
  //get parameters
  dataService.getSomeData(param1, param2, commonCallback.bind(null, null, res));
});

var commonCallback = function (err, payload, res) {
  if (err) {
    console.log("server error ");
    res.status(500).end();
    return;
  }
  if (payload.messageType == 'errorMessage') {
    res.status(401).json(payload);
  } else {
    res.json(payload);
  }
}

и в DataService. js:

const getSomeData = function (param1, param2, callback) {
    //do some work
    if (err) {
      callback(err);
      return;
    }
    callback(null, payload);
}

exports.getSomeData = getSomeData;

, но я получаю сообщения об ошибках Cannot read property 'json' of null Не думаю, что я правильно использую bind (). Но, кажется, не так много нетривиальных примеров.

Что я делаю не так?

...