Обеты с асинхронными вложенными темами - PullRequest
2 голосов
/ 27 сентября 2011

Я хочу, чтобы моя клятва имела доступ к externalDocs и innerDocs из моих тем, но это не так.

'ASYNC TOPIC': {
  topic: function() {
    aModel.find({}, this.callback);
  },
  'NESTED ASYNC TOPIC': {
    topic: function(outerDocs) {
      anotherModel.find({}, this.callback(null, innerDocs, outerDocs));
    },
    'SHOULD HAVE ACCESS TO BOTH SETS OF DOCS': function(err, innerDocs, outerDocs) {
      console.log(err, innerDocs, outerDocs);
      return assert.equal(1, 1);
    }
  }

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

1 Ответ

1 голос
/ 27 сентября 2011

Вы не можете установить аргументы для обратного вызова таким образом, функция поиска сделает это сама.Сделайте это вместо:

topic: function(outerDocs) {
  var self = this;
  anotherModel.find({}, function(err, docs) {
    self.callback(err, docs, outerDocs);
  });
},
...