jjzjj

asynchronous

全部标签

javascript - npm 关于回调错误的指南

我正在通读npm’scodingstyleguidelines并遇到了以下非常神秘的建议:Beverycarefulnevertoevereverthrowanything.It’sworsethanuseless.Justsendtheerrormessagebackasthefirstargumenttothecallback.它们到底是什么意思,如何实现这一行为?他们是否建议在自身内部调用回调函数?以下是我使用异步fs.readdir时的想法方法。fs.readdir('./',functioncallback(err,files){if(err){//throwerr//npm

javascript - 异步使用 IndexedDB

加载数据并将它们存储在indexeddb数据库中。我定期遇到数据库崩溃并无法访问它的情况。请给我一个如何异步使用indexeddb的解决方案!我现在使用的示例代码:vardataTotal=0;varthreads=6;//openIndexeddbConnection();functionstart(total){dataTotal=total;for(vari=0;idataTotal){//checkEnd();return;}$.ajax({url:baseUrl,data:{offset:dataNum},success:function(data){successData(

javascript - Node.js - 在继续代码之前等待多个异步调用完成

所以基本上我有一个for循环,里面有一个异步函数。问题是程序只是在循环之后继续,我希望它等到循环中调用的所有异步函数都完成后再继续代码。在我的代码中,“bar”是一个包含其他json数组的json数组。functionwrite(bla){//getscalledoneafteranotherfor(varurlinbla){asyncFunctionCall(url);//Executedabout50times,ithastorunparallel}//Waitforallcalledfunctionstofinishbeforenextstuffhappensand//write

javascript - 错误 : No response has been set. 用于 Google 智能助理操作的云功能

我正在使用Dialogflow、CloudFunctions和新的NodeJS客户端Assistant应用>ActionsonGoogle库V2。事实上,我正在将使用V1构建的旧代码迁移到V2。背景我正在尝试使用两个单独的意图获取用户的位置:请求权限(触发/向用户发送权限请求的意图)和用户信息(意图检查用户是否授予权限,然后返回助手请求的数据以继续。问题问题在于,在V1上运行良好的相同代码在V2上却无法运行。所以我不得不做一些重构。当我部署我的云函数时,我能够成功请求用户的许可,获取他的位置,然后使用外部库(geocode),我可以将latlong转换为人类可读的形式。但由于某些原因(

JavaScript Promise.all - 如何检查解析状态?

比方说,我有一个promise数组,每个元素都是一个AJAX调用,用于获取View的图像(png)。constimages=Promise.all(views.map(view=>{returnfetch(`/sites/${siteId}/views/${view.id}/image/`);}));是否有可能使用Promise.all检查promise解决的当前状态?如果不行,还有其他办法吗?例如,如果下载了10/20张图片,我想给用户一个反馈,我们已经为他下载了50%图片。 最佳答案 每当promise解决时,只需增加一个变量:

javascript - 将变量传递给javascript中的异步函数( promise )

我有以下循环运行的代码:varindex=fileNames[x].lastIndexOf("/")+1;varcurrentImageName=fileNames[x].substr(index);if(currentImageName.indexOf(".jpg")!=-1){reader.getFileAsBlob(fileNames[x]).done(function(blob){picturesFilePathArray.push({fileName:currentImageName,fileURL:blobURL(blob)});refreshKMZList();});}我

javascript - 加载文件后如何将 promise 错误传播到更高的 promise 级别?

我正在使用bluebird开发异步脚本加载器我正在努力将错误传递到我可以捕获它的地方。加载文件后,我将调用名为declare的方法,如下所示:declare("storage",[{"name":'util',"src":'../src/util.js'}],function(util){varstorage={};//...stuffwithutilreturnstorage;});声明是:declare=function(name,dependency_list,callback){varresolver;//digestpromisesreturnedforeachmodulef

javascript - 如何在异步/等待语法中使用 Promise.prototype.finally()?

实际上我的主要问题是在async/awaitES8语法中使用Promise.prototype.catch(),毫无疑问是Promise。prototype.then()存在于async/await语法的本质中。我搜索了关于在async/await中使用Promise.prototype.catch()并找到了这个:async()=>{try{constresult1=awaitfirstAsynchronousFunction();constresult2=awaitsecondAsynchronousFunction(result1);console.log(result2);}c

javascript - task.js 生成器/ promise 与异步回调

我想知道在处理JavaScript中的异步代码时,这两种方法中哪种方法更好。我想了解哪种方法可以生成更清晰的代码。我习惯于使用promises,它们似乎比异步方法(https://github.com/caolan/async)更灵活。我也知道Task.js库(http://taskjs.org/),但这依赖于作为EcmascriptHarmony一部分的yield关键字。 最佳答案 async库封装了几个非常常见的异步模式,包括并行进行任意异步调用和异步迭代列表。它旨在与“nodeback”(err,res)API一起使用,这使得

javascript - NodeJS, Async forEachSeries 执行顺序

只是想尝试使用NodeJS的异步模块。我有以下代码。vara1=[1,2,3,4,5,6,7,8];async.forEachSeries(a1,function(n1,callback){console.log(n1);vara2=[10,11,12,13,14];async.forEachSeries(a2,function(n2,callback){console.log(n1+""+n2);callback();});callback();});我想把上面代码的处理过程打印成这样111011111211311422102112122132143310311312313314..