嵌套承诺与q-io
Nesting promises with q-io
我试图理解这样一种想法,即返回另一个承诺的承诺将成为返回的值。这就是我在维基上的Q文档中读到的内容。https://github.com/kriskowal/q#tutorial
这是一种理想的情况,因为我使用的是q-io/http,它使用promise来发出请求。但是,函数会在一个新的promise中返回实体的值。
而不是将我的其余代码嵌套在我的第一个函数中。我希望在嵌套的promise完成时得到通知。然而,由于范围的原因,我似乎做不到。但我一直在读,我的外在功能应该成为内在承诺的价值。我是不是错过了什么?
Ex。
module.exports = function (obj) {
var getFiles = HTTP.request(obj);
getFiles
.then(function(res) {
return res.body.read()
});
return getFiles;
};
我想在res.body.read()使用Q.all()实现其承诺时得到通知,但我不知道如何获得该值。我觉得getFiles应该成为内心的承诺。正确的
我觉得getFiles应该成为内心的承诺。正确的
没有。承诺不会改变它的价值。但是,.then
方法确实返回了一个新的promise,该promise将使用"内部promise"read
方法的结果进行解析(解析getFiles
时将调用该方法)。
您可以将代码缩短为
module.exports = function (obj) {
return HTTP.request(obj).then(function(res) {
return res.body.read()
});
};
相关文章:
- 我的职位回报太快了,如何做出承诺
- 打破承诺链的好方法是什么
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 从函数返回角度承诺
- YUI3 IO实用程序是否可以根据给定的内容类型标头值自动序列化数据
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 如何使用Socket.io将命令从客户端发送到服务器
- 我怎样才能获得承诺的价值
- Webdriver.io pageObject模式-通过传递参数来定义元素选择器
- 延期承诺值未更新/解析/延期
- 在承诺链中处理早期回报的最佳方式
- Socket.IO未定义变量
- Socket.io on Mozilla Rhino
- 如何在Ionic2测试版中包含Ionic.io服务
- 承诺在非节点式回调上使用Bluebird
- socket.io发射三次
- AngularJS$q承诺使用socket.io
- 嵌套承诺与q-io
- 链接在webdriver.io中的while循环中承诺
- socket.io - 套接字等待承诺