q.all 不适用于多个 Promise

2024-01-05

我有以下 q.all 调用来解决两个承诺。我检查了所有帖子并尝试了所有其他实施方式 q.all 及其相同的情况

var xyzdeffered = $q.defer();
service1.getServiceDetail1($routeParams.id).then(function(promise) {
    xyzdeffered.resolve(promise);
});

var abcdeffered = $q.defer();
service2.getServiceDetail2($routeParams.id).then(function(promise) {
abcdeffered.resolve(promise);
});


$q.all([ xyzdeffered, abcdeffered ]).then(function(data) {

    $scope.variable = data;

});

我期望 q.all 中的变量只有在前两个承诺得到解决后才会被填充。但不幸的是,服务调用本身没有返回数据,控制权转移到 q.all。我觉得这很奇怪,因为根据文档,只有当您的承诺返回 200 响应并得到解决时,才会调用 q.all 。 我检查了对网络调用的分析,并放置了一些警报来查看代码的顺序,发现 q.all 警报是第一个弹出的警报,然后其他承诺得到解决。 这真的让我很生气,因为为什么 q.all 的简单实现不起作用。 任何帮助将不胜感激。


为什么不直接在第一个承诺上调用 $q.all ?

$q.all([
    service1.getServiceDetail1($routeParams.id),
    service2.getServiceDetail2($routeParams.id)
]).then(function(data) {
    //Array of result [resultOfgetServiceDetails1, resultOfgetServiceDetails2]
    $scope.variable = data;
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

q.all 不适用于多个 Promise 的相关文章

随机推荐

  • 未针对早午餐编译供应商 CSS 文件

    我对 b 有疑问 电子邮件受保护 cdn cgi l email protection不编译 Bower Component CSS 文件 如同在 Brunch 中分离应用程序和供应商 CSS https stackoverflow com
  • 在 C 中创建数组时出现分段错误

    我最近迁移到一台新笔记本电脑 HP dv6119tx 英特尔酷睿 i5 4 GB RAM 它安装了 Windows 7 Home Premium 64 位 我正在尝试创建一个类型的数组int长度为 10 6 的 C Dev C 我曾经在我的
  • 在 React Native 中使用 PanResponder 锁定移动

    使用本机反应泛响应器 https facebook github io react native docs panresponder html 当屏幕触摸坐标超出一定值范围时 如何阻止移动 例如 如何防止用户将组件移动到屏幕上某个 y 位置
  • 比较堆转储 (HPROF) 文件

    是否可以比较两个 HPROF 文件 如何 根据我的发现 您只能比较对象的直方图 为此 请转到 直方图 视图 然后单击 与另一个堆转储比较 并选择另一个 hprof 文件 Here is screenshot
  • 获取孩子的所有孩子等等

    我使用 MongoDb 作为数据库 我想要所有孩子的孩子等等 让我们假设 A 有 B 和 C 孩子 B 有 D 和 E 孩子 D 有 F 和 G 孩子 所以当我查询子节点时A 我将所有孩子作为输出 例如 B C D E F G C Cust
  • 检查一个数据帧的值是否按确切顺序存在于另一个数据帧中

    我有 1 个数据数据框和多个 参考 数据框 我正在尝试自动检查数据帧的值是否与参考数据帧的值匹配 重要的是 这些值的顺序也必须与参考数据帧中的值相同 这些列是重要的列 但我的真实数据集包含更多列 下面是一个玩具数据集 Dataframe g
  • 1个月后自动将列表数据从一个列表复制到另一个列表

    我列出了在提交信息路径表单后动态存储数据的列表 我想在任何数据创建日期 30 天后存档此数据 你能建议我该怎么做吗 看看我可以通过工作流程做到这一点 但我如何设置条件 在创建任何列表后 30 天完成后 它将自动复制到其他列表中 首先我想问为
  • 如何防止XSS攻击

    渗透测试团队告诉我 以下 URL 正在引发 XSS 攻击 这是我的 download msg jsp 代码
  • 存储过程参数默认值

    我正在尝试创建一个带有默认参数的存储过程 在我的查询中我会这样做 DECLARE mydate DATETIME DECLARE MT DATETIME DECLARE MY DATETIME SELECT mydate GETDATE S
  • 填充seaborn / matplotlib中两个正态分布之间的重叠区域

    我想填充两个正态分布之间重叠的区域 我有x最小值和最大值 但我不知道如何设置y边界 我看过plt文档 https matplotlib org gallery lines bars and markers fill between demo
  • 使用 mongo-cxx-driver 构建 C++ 项目时出现链接错误

    我目前正在开发一个C 需要使用的应用程序mongo cxx driver用于访问MongoDB实例 我尝试了几种安装方法 但每次都会遇到相同的链接器问题 最初 我尝试安装mongo cxx drivers and mongod c driv
  • aiohttp.TCPConnector (带有 limit 参数)与 asyncio.Semaphore 用于限制并发连接数

    我想我想通过制作一个简单的脚本来学习新的 python async wait 语法 更具体地说是 asyncio 模块 该脚本允许您一次下载多个资源 但现在我被困住了 在研究时 我发现了两种限制并发请求数量的选项 将 aiohttp TCP
  • 如何在 Delphi 中创建文本文件

    我有一个程序 用户可以在其中注册我的程序 并为他们创建一个文本文件 我尝试过使用 CreateFile 函数 但不确定参数 当每个用户使用此功能或任何其他功能注册时 如何为他们创建一个文本文件 也许您可以创建一个字符串列表并将其保存到文件中
  • 如何检查 HTTP_REFERER 是否包含字符串,但不完全匹配?

    我知道 HTTP REFERER 作为安全措施并不安全 但我仍然想知道 如何检查 HTTP REFERER 的值是否包含 www someexample com 即使它可能是 www someexample com awards user
  • 将数据库从 MS Access 转换为 Android 版 SQlite

    我有一个 MS Access 数据库 现在我想转换为 SQLite 数据库 是否可以 如果是 并且您有任何与之相关的想法 请与我分享 谢谢 您可以使用以下工具对其进行转换 https www sqlite org cvstrac wiki
  • 我可以返回并编辑 SVN 签入的评论吗?

    我在 SVN 的评论中添加了一个错误 我可以在签入后编辑此内容吗 提交消息是 未版本控制的属性 http svnbook red bean com en 1 0 ch05 html svn ch 5 sect 1 2并可以改变svn 属性集
  • 直接从文件系统访问网站时,IE9 中的本地存储失败

    两种说法window localStorage and window localStorage 访问 url file C index html 时未定义 在文件系统上运行网站时 localStorage 是否受到限制 附言 我在 Wind
  • 为什么 knitr 代码块中的 $PATH 与终端中的 $PATH 不同?

    knitr BASH 块中回显的 PATH 缺少我的 MACOS 终端中 PATH 的一些路径 这是为什么 有没有什么方法可以将 knitr 中的 bash 引擎中的默认 PATH 设置为与终端中相同 1 针织物 bash echo PAT
  • 将 org.w3c.dom.Node 转换为文档

    我有一个Node从一Document 我想要那个Node并将其变成新的根节点Document 我能想到的唯一方法如下 Node node someChildNodeFromDifferentDocument DocumentBuilderF
  • q.all 不适用于多个 Promise

    我有以下 q all 调用来解决两个承诺 我检查了所有帖子并尝试了所有其他实施方式 q all 及其相同的情况 var xyzdeffered q defer service1 getServiceDetail1 routeParams i