angular-promise相关内容
想象一下,我有一个像下面这样的承诺链.如果 func2 被调用,我想避免 func3 或 func4 被完全调用. AsyncFunction().then(func1, func2).then(func3, func4) 目前,如果我在 func2 中抛出错误,func4 将被调用.如果我在 func2 中返回一个值,则 func3 似乎被调用. 我正在使用 Angular $q.
..
我是 angularjs 的新手,想在现有代码中添加新功能.但是代码没有按预期工作.我知道我没有以正确的方式做这件事.请纠正我错误在哪里.我不知道为什么不使用控制器,但在这种方法中使用指令? 这是我的自定义服务和自定义指令指令代码. 服务代码: angular.module("quickquiz-builder").service("SettingsService", functio
..
我有以下代码:http://jsfiddle.net/kyy4ey10/4/ $scope.count = 0;函数 getActiveTasks() {var deferred = $q.defer();设置超时(函数(){$scope.count++;deferred.resolve();},1000)返回 deferred.promise;}//我想把它放在函数中,但它不起作用var de
..
我已将一些常用代码移至工厂.但是控制器在工厂加载之前正在执行.在这种情况下,我得到了空白响应(零结果) 任何人都可以提出最佳解决方案. 这是我的角度工厂, app.factory('TabsFactory', function($resource){var activetabs = {};activetabs.getDepositAccountDetails = function()
..
在我的控制器中,我需要一个函数,它接受一个参数并从服务器返回一个 URL.像这样: $scope.getPoster = function(title) {return $http.get("http://www.omdbapi.com/?t=" + title + "&y=&plot=short&r=json");}; 在我的视图中,我需要以这种方式传递标题并为 ng-src 获取结果为 s
..
我想问一下这个方法的区别我关心的是 .then 和 .success、function 和 .error 之间的区别谢谢. //简单的 GET 请求示例:$http({方法:'获取',网址:'/someUrl'}).then(函数successCallback(响应){//这个回调会被异步调用//当响应可用时}, 函数错误回调(响应){//发生错误时异步调用//或者服务器返回带有错误状态的响应.
..
我正在向 nodejs 发送表单以进行身份验证.在以下函数中使用 $http.get 并添加 promise > .then.在生产中,这是否处理了我可能从服务器获得的所有错误?我需要为这个功能添加任何其他东西吗? MyApp.controller("登录", function($scope, $http){$scope.checkuser = 函数(用户){$http.get('/logi
..
我有一个 Controller,它在 Factory 中启动 API 调用.目前我开始调用,然后在调用之后我有一个函数来检查 Array 的状态.但是我不确定如何在收集数据时强制它在这里等待,因此需要某种 $q 实现. 正如您在下面的屏幕截图中看到的,vs.tickers 返回一个空的对象或数组.最后,GetTickersFactory 中的 console.log 触发: 第一个控制
..
我想运行来自 https://docs.angularjs.org 的承诺示例/api/ng/service/$q,这是我的代码: angular.module('testControllers').controller('testCtrl', ['$scope', '$q', function($scope, $q) {函数 asyncGreet(name) {//执行一些异步操作,在适当的时
..
在我的应用程序中,我将数据存储在本地存储中并在后台触发异步 http 发布.一旦成功发布,发布的数据就会从本地存储中删除.当http post处理时,可能有更多的数据添加到本地存储,所以我需要将post排队并顺序处理它,因为我需要等待本地存储从成功的post中清除.应递归调用该任务,直到本地存储中有数据. taskQueue: function () {var deferred = $q.def
..
我想更新我保存在工厂中的全局数组中的一些值.我使用 get 方法来获取数据,但 set 函数以某种方式没有完成它的工作,并且数组中的值没有得到更新.我错过了什么? .factory('messageList', function () {变量消息 =[{ "title":"Cash in", "icon":"ion-social-euro",“dailyValue":“0",“weeklyVal
..
我正在使用 angular 和 jasmine 的组合来测试控制器,但我并不完全确定使用延迟承诺. 这是我的规范代码. describe('控制器测试', function(){var 范围,searchAPI;之前每个(功能(){var mockSearchAPI = {};模块('myApp',功能($提供){$provide.value('searchAPI', mockSearch
..
我如何做类似 $q.all 的事情,但限制同时执行的承诺数量? 我的问题就像如何限制Q promise并发? 我希望一次不超过 5 个进程 另一个问题的公认答案是一个为 promise 编写的库,包装为与 Q.但我对 Angular 的 $q 而不是 Q 的解决方案特别感兴趣. 背景:正在解决的问题: 我有一堆文件要分两步下载:a) 获取 URL b) 下载文件. 浏览
..
这里的角度 2 有问题.我使用返回承诺的服务,但是当我尝试检索响应时出现错误. 我读了这个这个stact问题这是我的代码. 这是 HotelService.ts import { Injectable } from '@angular/core';从 '@angular/http' 导入 { Http };//rxjs 承诺导致 angular http 返回可观察的原生.导入 'r
..
我的 promise 返回代码有问题,我有一个函数 getTagQuotes,其中包含一个 for 循环,该循环可以多次调用 API 以将数据返回到数组中. 我的代码如下: //如果有标签,则在这里等待promise:如果(标签.长度> 0){//将 promise var 设置为 getTagQuotes:var promise = getTagQuotes(tags).then(fun
..
我在使用重试功能时遇到了一些问题,希望得到一些帮助.我有一个 $resource 我想在成功条件发生或超过最大重试次数之前调用它. 我似乎遇到的问题是,在我的重试函数中,我正在调用另一个承诺,这就是检查条件的地方.我可以通过删除添加的承诺并在几次重试后创建默认成功条件来使代码按预期运行,但我无法弄清楚如何将新的承诺调用正确添加到函数中. resource 是一个 Angular $re
..
我有以下 q.all 调用来解决两个承诺.我检查了所有帖子并尝试了所有其他实现方式 q.all 和相同的情况 var xyzdefered = $q.defer();service1.getServiceDetail1($routeParams.id).then(function(promise) {xyzdefered.resolve(promise);});var abcdevered =
..
我有一个服务,它用返回延迟对象的函数包装 $http. 我的界面: 导出接口 MyServiceScope {获取:ng.IPromise;} 我的班级: 导出类 MyService 实现了 MyServiceScope {静态 $inject = ['$http', '$log'];构造函数(私有 $http: ng.IHttpService,私人 $log: ng.ILogServ
..
由于 success() 和 error() 函数在 AngularJS 中被弃用,我正在更新我的代码,将它们替换为 then().现在根据我的理解,这两段代码的行为应该是一样的: $http.get(/* 一些参数 */).成功(功能(){//成功案例在这里}).错误(功能(){//这里的错误案例}); 还有 $http.get(/* 一些参数 */).then(function() {/
..
如果页面关闭,我想发送一个 $http.get.然后我偶然发现了一个问题 承诺无法解决,因为如果最后一个方法返回,页面将被破坏. 以下不起作用,因为 onbeforeunload 无法解析承诺/不等待它们: window.onbeforeunload = function($http.get('http://someth.ing/update-state?page=unloaded').
..