问题标签 [angular-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 回答
763 浏览

angularjs - 使用在视图中使用服务承诺的 angularjs 控制器

我有一个使用 angularjs 服务承诺的控制器。我已经针对控制器编写了 jasmine 单元测试,因此控制器功能如下所示:

看起来这不适用于视图?如果我将函数更改为:

然后它可以工作,但是我无法测试我的控制器功能。我的首选方式是将其用作 this.getTodos、this.saveTodo、this.DeleteTodo 等......

请问有什么建议吗?

非常感谢

====>> 更新

如前所述,测试都在工作,但视图不显示数据;似乎控制器 this.getTodos 根本没有被调用。....我不确定如何强制角度视图使用控制器 getTodos ...测试如下:

以下茉莉花测试工作正常:

但是,视图不会填充行...

该视图的代码如下:

0 投票
2 回答
102 浏览

angularjs - 如何从回调中访问数据

我已经编写了调用方法getChildren来获取与 id 相关的数据,但是我无法在调用者方法中访问该数据。我的示例代码如下

我已经在控制器中编写了这两种方法并传递了所有必要的对象

这有什么问题。我想将回调中的数据分配给我的结果。我怎样才能做到这一点。

0 投票
2 回答
4465 浏览

javascript - AngularJS 承诺响应未定义

我已经阅读了多篇关于$promise在 AngularJS 中使用的文章,但我仍然无法弄清楚为什么我在下面的代码中出现错误:

控制器代码:

服务代码:

在 Chrome 控制台窗口中,我收到错误消息:

ReferenceError:未定义响应

0 投票
2 回答
1610 浏览

angularjs - AngularJS 打破承诺链

如何打破 AngularJS 中的链式承诺?

这是 app.js 中的评论,我想打破链。

http://plnkr.co/edit/MBBWJGwPfy2Wz13yczvV?p=preview

0 投票
0 回答
156 浏览

angularjs - 在角度控制器中处理来自服务的多个承诺

我是角度框架的新手,对构建控制器有疑问。

我有角度控制器,它几乎没有服务调用,每个服务调用都返回一个承诺。每个调用都需要(依赖于)前一个调用的数据。

甚至多达三个这样的调用将我的控制器转换为嵌入在 then() 中的丑陋的纠结的 then() 块。

例如考虑一个场景

  1. 加载谷歌地图
  2. 获取用户的当前位置
  3. 在当前位置的地图上显示一个标记

控制器定义为

这些操作隐藏在服务背后,因为我仍然不确定我们是继续使用谷歌地图还是打开街道地图或必应。

我尝试了什么基于状态的结果对象

问题 :

  1. 有没有更好的方法来处理代码而不是处理异步结果?
  2. 有没有我不知道的更简单的方法?
0 投票
3 回答
1093 浏览

angularjs - Promise 链成功在第一个返回错误后执行

我有一个承诺链,其中第一个承诺会导致失败,但即使这样,第二个承诺也会成功执行,而正如预期的那样应该失败......

柱塞链接

我所做的很简单:

因此,如果第一个执行错误,则应执行后续错误,但 get 是:

为什么呢??

0 投票
2 回答
2692 浏览

angularjs - Angularjs - 向作用域添加承诺的最简洁方式,现在 Angular 已弃用承诺的自动解包

我真的很喜欢自动解包承诺的干净(而且我认为很容易遵循)方式:

而且我真的不在乎现在似乎是标准的做法,没有自动展开:

我想看到的是这样的:

但我看不出如何做到这一点。我得到的最接近的是:

使用添加到根范围的函数:

但我不喜欢必须将范围变量名称作为附加字符串传递的 unDRY 要求。有没有其他人解决过这个问题,或者找到了一种更干净的方法?

0 投票
1 回答
83 浏览

angularjs - AngularJS 等待带有 .then 的 ajax 响应没有按预期工作

在我的应用程序中,我想检查用户是否已登录,因此我可以启用或禁用菜单中的按钮。我可以用一种简单的方式做到这一点,但后来我遇到了一个问题,即菜单会“闪烁”,用户会在其中看到一些菜单项,直到出现来自 ajax 的响应。

这就是我想出的,如果我遵循文档。然后在我的页面加载之前做出承诺并等待来自 ajax 调用的响应,但这不是发生的事情,“眨眼”仍然在发生。

任何想法如何解决这个问题?

0 投票
1 回答
3825 浏览

jquery - How convert Angular promise to jquery deferred object

I want to return promises from my module/sdk to non-angular javascript. For example if I'm returning promise to a jquery, I should be probably sending jquery deferred object. How can I convert an Angular promise to a jquery promise/deferred obj.

Any suggestions are much appreciated.

0 投票
2 回答
129 浏览

javascript - Angular 从不同的 Promise 构造 ViewModel

在我的 Angular 项目中,我有一个返回产品数组的 Promise:

然后对于每个产品代码,我必须调用另外两个分别返回价格和数量的承诺。

我使用 ui-router,我当前的解析中的实现代码如下:

它有效,但我的问题是我是否可以写得更好。我阅读了有关使用的信息$q$q.all但我真的不知道如何使用它们。有什么办法可以编写上面的代码,更好,更安全?

在此先感谢您的帮助!