Я пытаюсь расширить значение разрешенного обещания с помощью метода bluebird .return()
.Расширение разрешения bluebird с помощью метода bluebird .return()
В настоящее время я использую следующий код:
doSomethingAsync() // assume resolved value is {a: 0}
.return({b: 1})
.then(console.log); // prints {b: 1}
Я хотел бы расширить result
объект ({Ь: 1}) с doSomethingAsync
разрешенного значения, в этом случае {a: 0}
, так что я мог бы написать что-то как:
var extend = require('extend');
doSomethingAsync() // assume resolved value is {a: 0}
.return(extend(resolvedValue , {b: 1}))
.then(console.log); // should print {a: 0, b: 1}
можно ли получить доступ к doSomethingAsync()
разрешенное значение (в этом случае {a: 0}
) из в параметре .return()
?
Это теперь, как '.return' следует использовать. На ссылочной странице упоминается, что значение, используемое '.return', должно быть связано во время вызова' .return'. Вы должны просто нормальный '.then' и иметь метод extend, возвращающий расширенный объект. – Chris911