问题标签 [rsvp-promise]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
127 浏览

javascript - Ember Promise 链未返回总和

我正在使用 Ember Data 并尝试创建一个计算属性,该属性等于商店中应用了各自折扣的所有产品的总和。我是承诺链的新手,我相信这是我如何格式化链的问题。

任何帮助和建议将不胜感激。

0 投票
2 回答
174 浏览

javascript - AJAX 承诺调用处理

我有一个 Ember 承诺电话,如下所示;

我的问题是我可以为 $.ajax() 使用通用代码,但是对于 done() 回调有不同的实现,我可以通过从调用位置传递一些参数来检查它。

所以基本上,我想要

0 投票
2 回答
57 浏览

javascript - 嵌套 promise 并在路由中返回它们不会更新路由模型和使用该模型的模板

在我的路由模型中,我需要发送两个请求(以前的和最新的),并在响应中获取他们的 ID 以发送另外两个请求(baslineCpature 和 currentcapture)。当我得到两个请求的响应时,我需要发送另外两个请求(fiberHealthData、wavelengthsPerSectionData)。ember 模型应该返回(baslineCpature、currentcapture、fiberHealthData、wavelengthsPerSectionData)。我在这里遇到的一个问题是,我想在收到 baslineCpature 和 currentcapture 的响应后立即更新我的模板。

这是我的代码。如果有人能告诉我我做错了什么,我将不胜感激。

0 投票
1 回答
695 浏览

ember.js - Ember 并不总是加载belongsTo

我似乎无法锻炼如何在 Ember 中正确加载关系。用户模型仅在某些时候返回。如果我刷新页面,似乎有 50/50 的机会该值将为空,或者它会正确解析。

我知道在路由中我返回一个承诺,它是服务器对象(用户关系的 belongsTo 结束),但是我如何告诉路由在加载页面之前等待用户模型加载,或者我该怎么做告诉 ember 在最终加载用户时更新页面上的数据?

我曾尝试在 afterModel 挂钩中使用 RSVP,但没有任何运气。必须有一个明显的解决方案?

路线

服务器模型

用户模型

零件

组件模板

我在这里读过一个类似的问题How to load belongsTo/hasMany relationship in route with EmberJS

但是由于我只返回一个对象而不是一个数组,所以Array Methods must be provided an Array在尝试任何解决方案时都会被抛出

服务器响应

0 投票
1 回答
546 浏览

node.js - 解析promise数组node.js

我是 Promise 的新手,我正在尝试在 Node.js 和 PostgreSQL 中使用 RSVP Promise,但我做错了,很可能。任何有关如何解决该问题或如何改进代码的建议都值得赞赏。

我试图实现的是:接收数据后 - 处理数据以创建 SQL 更新查询,并在它们准备好时 - 执行它们。这里的数据是用户 ID 数组。

什么不起作用:我得到了一系列无法​​解决的承诺数组,我尝试像这样解决数组:

但它也没有奏效。

编码:

1)接收数据并调用函数'promiseQuery'处理数据的函数'update':

2)函数'promiseQuery'处理数据(它比较接收到的数据和db中的数据以用新数据更新db):

3)该函数'populateUpdateArray'填充需要更新的用户ID数组(基本上,接收到的用户ID应该替换数据库中的ID - 因为我们检查我们收到的哪些ID不在数据库中,哪些ID不在数据库中收到的ID):

4) 该函数“populateUpdateQuery”返回 sql 更新查询:

谢谢!

编辑:我将代码更改为只有一个数据库连接,并稍微简化了代码。我没有收到任何错误,但仍然没有执行查询。我想我在这里缺少一些基本的东西:

0 投票
2 回答
67 浏览

javascript - Ajax Promise on Property 不返回数据

我有一个带有简单属性的 Ember 控制器,它应该从服务器获取文件列表。服务器端一切正常,数据正在返回并显示在控制台上。

在控制器中,我有:

在模板中:

我已经尝试了所有我能想到的变化。封装在函数中并返回 Promise,成功返回响应,......
我仍然无法得到返回实际数据的承诺。

0 投票
0 回答
197 浏览

ember.js - RSVP.hash - 承诺不像返回没有承诺的对象那样工作

在我的模型中,我正在重新调整没有promiselike 的数据:

它工作正常。但是当我添加RSVP承诺时,我并没有将数据添加到我的模型中。

在这里添加一个有什么问题promise?或者在这里解决承诺的正确方法是什么?

提前致谢。

0 投票
0 回答
56 浏览

ember.js - 如何向调用者发出有关承诺状态的信号

  • 我有 Ember 代码,其中后端 API 调用被抽象为一个单独的服务。该服务使用 ember-ajax 库进行后端调用。
  • 此服务设置公共标头、处理超时错误和 4xx/5xx 错误。像 422(验证错误)这样的其他任何事情都留给调用代码处理。

-

并且call-backend-service看起来像这样

callEndpoint 执行 RSVP.Promise.race 调用以确保调用的后端 API 在超时发生之前返回。它运行两个承诺,首先解决的就是获胜的。didAnybodyWin是保护两个 Promise 不被执行的标志。

到这部分为止一切都很好。

但是这个 didAnybodyWin 成为这个 call-backend-service 的共享状态,因为它必须向调用者传达它是否运行了默认的 then 或 catch 块集,或者它是否希望调用者运行它的 then/catch 块。

问题是当 model() 钩子运行时,我正在做

此 RSVP.all 将一个接一个地执行所有 3 个调用,因此它们将以交错的方式访问 call-backend-service 并因此冒着相互踩踏的风险(当涉及到 didAnybodyWin 共享状态时)。

如何避免这种情况?被调用者是否有其他更好的方法可以向调用者发出信号,无论它是否应该对返回的承诺做某事。

0 投票
1 回答
73 浏览

promise - RSVP Promises:为什么父 Promise 等待非链式内部 Promise?

我们在我们构建的几个应用程序中使用了旧版本的 RSVP.js。

我希望这个承诺在输出“1”、“2”和 5 秒后“3”后立即解决。我认为内在的承诺会被视为一种价值。

相反,内部承诺似乎被视为链式承诺。

所以上面的实际输出是:“1”,5秒延迟,“3”,“2”。

我从 RSVP 文档 ( https://github.com/tildeio/rsvp.js/#chaining ) 中一直理解,链式 Promise 必须遵循某种格式。例如,如果我真的想要后一种行为(1、5 秒延迟、3、2),我会这样编写代码:

我问的原因是因为父承诺不在我的控制范围内(它是一些内部框架管道代码的一部分)。我的函数刚刚通过了父 Promise 的 resolve 和 reject 函数。

我的解决方法是将承诺包装在一个对象中,但这并不理想。

RSVP 的链接行为是否正确?有没有比将我的诺言包装在一个对象中更好的解决方案?我可能会尝试升级到最新版本的 RSVP,看看是不是因为我的版本过时。

0 投票
1 回答
1274 浏览

angular - 角度 POS 打印问题

我的要求:打印没有打印预览角度 6

我找到的唯一解决方案

Angular 2 Raw Printing Service 我正在使用 think link 进行 Angular POS 打印

我还有其他选择吗?

.ts 代码

我的服务代码

错误:

我得到 RSVP 未定义,如何更正?

在此处输入图像描述