$q.all 返回状态而不是值 - 为什么



这是代码:

$q.all($q.when(3), $q.when(5)).then(function (values) {
    console.log(values);
});

输出如下:

{"$$state":{"status":1,"value":3}}

该手册指出:

返回单个承诺,该承诺将使用数组/哈希 值,每个值对应于同一索引/键处的承诺 在承诺数组/哈希中。如果任何承诺通过 拒绝,由此产生的承诺将被同样拒绝 拒绝值。

所以我很困惑为什么不返回值。

$q.all接受数组或对象,所以如果你把它改成这样,它应该可以工作:

$q.all([$q.when(3), $q.when(5)]).then(function (values) {
    console.log(values);
});

相关内容

  • 没有找到相关文章

最新更新