deferred相关内容
setTimeout ->控制台.log 'foo'设置超时->console.log '栏'设置超时->控制台.log 'baz', 1000, 1000, 1000 是否可以使用 jQuery.Deferred 实现相同的结果?可能类似于以下内容: someFunction().then(-> console.log 'foo').then(延迟 1000).then(-> console
..
..
如果函数发生恐慌(在 Go 中),我想从函数返回错误: func getReport(filename string) (rep report, err error) {rep.data = make(map[string]float64)延迟函数(){如果 r := 恢复();r != 无 {fmt.Println("在 f 中恢复", r)错误,_ = r.(错误)返回零,错误}}()恐慌(
..
我习惯于将 $q 与 angular 1 一起使用.我正在迁移到 angular 2. 是否有提供 .when() 方法的等价物? 例如我需要迁移这个: .service('updateProDB', ['$rootScope','连接状态','$q','存储服务','sendToServer','$ionicPopup',功能($rootScope,connectionStatus
..
以下代码负责读取文件.我的要求是如何查找是否所有文件都已被读取,以便我可以从父函数(readmultifiles)返回或解析一个承诺. $.when(readmultifiles(files)).then(function(){//上传的所有文件})) 以上代码启动文件读取.可以做些什么以便在读取所有文件时回调完成或可以返回. function readmultifiles(files)
..
我之前曾在 jQuery 中使用过 Promise - 但我无法将它应用于这种情况.我更喜欢使用 $.when() 和 $.done() 方法来实现这一点. 据我所知,我需要构建一个 $.Deferred 对象来记录请求,当这些请求完成时 - 触发回调.在我下面的代码中,回调在 ajax 请求之前触发 而不是之后 - 也许我只需要一些睡眠 我知道我的代码不完整,我一直在努力通过添加 f
..
我真的很喜欢 jQuery 的延迟/承诺模式或范式的想法,但有时我无法将我老化的大脑围绕在更精细的点或特定的实现细节上. 事实上,最近我发现延迟/承诺模式/范式似乎早于 jQuery,并且至少也在这些其他 JavaScript 库/框架中: 延期github Q 主页 task.js 主页 when.js github wire.js github、演示 YUI galler
..
我主要使用 Scala 和 JavaScript 等编程语言.我试图了解在两种语言中如何使用异步反应式编程的异同.你能帮我吗? 我没有采用任何特定的 Js Promise 框架,因为它似乎许多实现了类似的规范(如 Promise/A).我目前只用过 Q. 似乎在 Javascript 中,我们将 Deferred 称为我们解析以完成 Promise 的对象.在 Scala 中,Prom
..
问题 1:在给定时间只允许一个 API 请求,因此真正的网络请求在排队,而有一个尚未完成.应用程序可以随时调用 API 级别并期望得到承诺的回报.当 API 调用排队时,网络请求的承诺将在未来的某个时刻创建 - 返回给应用程序的内容是什么?这就是如何通过延迟的“代理"承诺来解决它: var queue = [];函数调用API(参数){如果(API_available){API_availabl
..
Deferreds、Promises 和 Futures 之间有什么区别? 这三者背后是否有普遍认可的理论? 解决方案 鉴于我显然不喜欢我试图回答 OP 问题的方式.字面的答案是,promise 是与其他对象共享的东西,而 deferred 应该保密.首先,延迟(通常扩展 Promise)可以自行解决,而 Promise 可能无法这样做. 如果您对细节感兴趣,请查看 Promise
..
我有一个 Django 网站,其中一个页面有一个按钮(或链接),单击该按钮(或链接)会启动一个运行时间较长的任务.显然我想将此任务作为后台任务启动并立即将结果返回给用户.我想使用一种简单的方法来实现这一点,不需要我安装和学习全新的消息传递架构,例如 Celery.我不想用芹菜!我只想使用一种简单的方法,我可以设置并在接下来的半小时左右开始运行.没有一种简单的方法可以在 Django 中做到这一点,
..
我显然误解了 js 承诺的解析方式或“返回"的语义. 我被一个期望我同步的函数调用 - 返回一个值.计算该值需要一些异步代码(特别是 上的 ForEach 方法)dstore集合 我试图完成的大约是这样,但这不起作用,因为函数 mySynchronousFunction 没有返回值. function mySynchronousFunction() {var 累加器 = {};var
..
在下面的代码中是否也需要在错误情况下关闭响应体: res, err := http.Get(url)如果错误!= nil {log.Printf("错误: %s\n", err)}延迟 res.Body.Close() 解决方案 一般概念是,当一个函数(或方法)有多个返回值时,其中一个是error,应该首先检查错误,然后仅在错误为 nil 时继续.如果存在 error,函数应该为其他(非错误
..
我在理解为什么拒绝不通过承诺链传递时遇到问题,我希望有人能够帮助我理解原因.对我来说,将功能附加到承诺链意味着我依赖于要实现的原始承诺的意图.这很难解释,所以让我先展示我的问题的代码示例.(注意:此示例使用 Node 和延迟节点模块.我使用 Dojo 1.8.3 对此进行了测试,结果相同) var d = require("延期");var d1 = d();var promise1 = d1.
..
我需要以同步方式进行三个 HTTP 调用,如何将数据从一个调用传递到另一个调用? 函数 first(){ajax()}函数第二(){ajax()}函数第三(){ajax()}函数主(){第一个().然后(第二个).然后(第三个)} 我尝试对这两个函数使用 deferred 并想出了一个部分解决方案.我可以将其扩展为三个功能吗? function first() {var deferred =
..
我想要一个 for 循环,每次迭代都调用异步函数. 在 for 循环之后,我想执行另一个代码块,但不是在 for 循环中先前的所有调用都得到解决之前. 我目前的问题是,要么在所有异步调用完成之前执行 for 循环之后的代码块,要么根本不执行. 带有 FOR 循环的代码部分及其后的代码块(完整代码请参见 fiddle): [..]函数外函数($q,$scope){var defe
..
我有一个方法 seatClicked() 调用 getUserID() 来获取与会话属性“user"相对应的用户 ID.有一个包含用户名和用户 ID(唯一)的表.下面是seatClicked()的定义 $scope.seatClicked = function() {承诺 = $scope.getUserID();promise.then(函数(结果){$scope.seatID.userID
..
努力使承诺在 angularjs 服务提供者中正常工作我已经阅读了 docs 以及许多示例(此处,这里 和这里) 我认为我的语法没问题(虽然显然出了点问题) 应用模块和控制器看起来像 var myApp = angular.module('myApp', []);myApp.controller('Controller_1', ['$scope', 'Service_1', functio
..
我正在使用 angular 和 jasmine 的组合来测试控制器,但我并不完全确定使用延迟承诺. 这是我的规范代码. describe('控制器测试', function(){var 范围,searchAPI;之前每个(功能(){var mockSearchAPI = {};模块('myApp',功能($提供){$provide.value('searchAPI', mockSearch
..
我有一个服务,它用返回延迟对象的函数包装 $http. 我的界面: 导出接口 MyServiceScope {获取:ng.IPromise;} 我的班级: 导出类 MyService 实现了 MyServiceScope {静态 $inject = ['$http', '$log'];构造函数(私有 $http: ng.IHttpService,私人 $log: ng.ILogServ
..