当前位置: 首页 > 面试题库 >

通过收益与合作获得承诺的价值

唐健
2023-03-14
问题内容

我试图弄清楚如何通过yield可能与“ co” 一起获得承诺的价值:

function *(){
    var someVar = yield functionThatReturnsAPromise();
}

调用的函数不是生成器,而是普通函数。有了上面的,someVar == Promise但是我想要解析的值。是否合作或其他一些库有这样做的方法吗?


问题答案:

是的, 公司 可以做到。您必须在co调用中包装父函数:

co(function *(){
    var someVar = yield functionThatReturnsAPromise();
})()

someVar内在将成为解决价值。如果承诺被拒绝,则可以通过基本try {} catch (e) {}声明来纠正错误。



 类似资料:
  • 问题内容: 我正在从Angular的文档中查看此示例,但是我认为这可能总体上适用于Promise。下面的示例是从文档中逐字复制的,并附有评论: 我不清楚这是如何工作的。如果我可以调用第一个的结果并将它们链接起来(据我所知),那么它就是一个类型为Promise的对象。这不是一个。那么,“它的值将是promiseA的结果增加1”的含义是什么? 我应该以这种方式访问吗?成功回调如何返回承诺并返回“结果+

  • 问题内容: 我保证会绑定到我的UI中。当承诺解决并且UI元素呈现后,我可以单击该UI元素。在我处理点击的控制器代码中,我要根据诺言的价值行事。至此,在我的角度代码中,我已经知道诺言已经解决了..但是当我想要获得价值时,它仍然是诺言。 鉴于我知道必须兑现承诺,获得承诺价值的最佳方法是什么? 问题答案: 承诺永远是诺言- 那就应该如此。尽管可以将诺言直接绑定到视图,但我通常不鼓励这种做法,因为它缺乏透

  • 问题内容: 我有一个ID列表,我想使用它使用Java客户端jedis从Redis服务器检索哈希。如文档中所述,Jedis通过声明Response对象然后同步管道以获取值来提供一种使用管道的方法: 但是,我的清单的长度可变,每隔几分钟就会变化一次。因此,我无法预测需要声明的Response对象的数量。有没有一种解决方法,例如: 问题答案: 我想您要达到的目标是这样完成的。

  • 问题内容: 我编写了以下node.js文件: 如您所见,我为了等待读取csv文件的两种操作而使用。我不明白为什么,但是当我运行代码时,该行未提交。 我的第二个问题是我希望的回调函数接受两个不同的变量,而每个变量都是相关promise的结果。 问题答案: 第一个问题 兑现承诺 更改: 到(添加参数) 第二个问题 在与结果为每个传递给它的承诺数组缓解。 这意味着您可以将结果提取到如下变量中: 您可以使

  • 问题内容: 我一直在寻找有关如何使用Parse.com查询的示例。真的很模糊。我认为应该从以下内容开始: 但是然后,我不知道。你可以做类似的事情 在这种情况下,如果存在,我会收回“价值”。我想做的是。我得到了带有列ID和名称的表格。我知道ID是0,所以现在我想知道Name属于ID =0。但是我应该使用什么查询,我也不知道… 问题答案: Parse的Android指南在这里有一个基本的查询示例,它将

  • 问题内容: 这不是现实问题,我只是想了解如何创建承诺。 我需要了解如何对不返回任何内容的函数(例如setTimeout)作出承诺。 假设我有: 如何创建可以在准备就绪后返回的承诺? 我本来应该把它包起来带到某个地方: 但是我无法超越这个范围。 问题答案: 更新 在2017年,Promises内置在JavaScript中,并由ES2015规范添加(polyfill可用于IE8-IE11等过时的环境)