草庐IT

异步IO

全部标签

javascript - 类中的异步函数

当我尝试运行类中描述的异步函数时出现此错误ma​​sterClass.jsclassMasterClass{asyncfunctionupdateData(a,b){let[res1,res2]=awaitPromise.all(call1,call2);return[res1,res2]}}test.jsconstMasterClass=require('./MasterClass.js')letm=newMasterClass()m.updateData(a,b)错误asyncfunctionupdateData(a,b){^^^^^^^^^^SyntaxError:Unexpec

javascript - 自动重新连接超时后如何重新连接 socket.io 客户端?

笔记本电脑进入休眠状态很常见。这会导致socket.io客户端断开连接。当用户返回到Web应用程序时,socket.io客户端不会尝试重新连接(可能达到重新连接限制?)。如果用户执行某些操作,我如何告诉套接字重新连接?例如,我希望emit函数检查连接是否处于事件状态,如果没有则尝试重新连接。注意:我只需要客户端JS代码,我没有使用node.js。 最佳答案 在0.9版中,您可以尝试将连接选项对象设置为一些激进的设置:varmain=io.connect('/',{'reconnectiondelay':100,//defaultst

javascript - 需要 : var io = require ('socket.io' )(http); 的双参数

我是node和JS的新手,正在研究socket.io聊天示例(http://socket.io/get-started/chat/)。我在服务器中遇到了这段代码:varapp=require('express')();varhttp=require('http').Server(app);vario=require('socket.io')(http);我看过其他教程,之前从未见过require之后的双括号。(http)部分有什么作用?它是require的参数,它改变了类型,还是其他什么?谢谢! 最佳答案 在JavaScript中,

javascript - Yeoman.io 在安装 generator-angular 时出现问题

写问题时使用了谷歌翻译器。在新安装的ubuntu14.04上设置nodejs-sudoadd-apt-repositoryppa:chris-lea/node.jssudoapt-getupdatesudoapt-getinstallpython-software-propertiespythong++makenodejs然后安装哟-sudonpmi-gyo然后我安装generator-angular-sudonpmi-ggenerator-angular从您打开终端的目录并安装generator-angular-yoangular并得到很多错误。为什么?如何解决?SergioLope

javascript - 以 gzip 格式从 node.js 服务器向客户端发送 socket.io 响应数据

我遇到的问题是我不知道如何判断我发送回客户端的数据是否以gzip格式压缩。从我看到的命令行查看服务器的输出:debug-websocketwriting3:::{"result":1368673052397}debug-websocketwriting3:::{"result":1368673053399}...对我来说,这看起来像是服务器正在以ascii格式写入响应,而不是在发送之前先压缩它。下面是我为产生这些结果而编写的示例。从我读过的内容来看,只要我设置了“浏览器客户端gzip”,我的回复就应该以gzip格式发送。如果它们不是,我该怎么做,如果是,我如何从服务器的调试信息中判断它

javascript - 推特按钮脚本同步加载,需要异步加载

我在使用Twitter按钮脚本时遇到了一些问题,它阻止了页面呈现。我一直在使用的脚本如下Tweet!function(d,s,id){varjs,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");关于如何对这个排序有什么想法吗?

javascript - RequireJS 的 require 调用什么时候是异步的?什么时候同步?

我使用RequireJS在我的一个项目中加载我的模块。我在网络上看到使用require调用(而不是define)来要求模块的不同方式。假设我有一个名为“JQuery”的模块,并且我想要使用它。正如我在示例中看到的,有两种可能的方法:这个:require(["JQuery"],function($){$.doSomething();})还有这个:var$=require("JQuery");$.doSomething();我的问题是,如果负载像RequireJS文档所说的那样是异步的,那么第二个约定如何工作?我如何确定$已定义并且第一行在第二行执行之前完成?

javascript - 如何设置在 node.js 中运行异步函数的时间限制?

有一个异步函数fun(param,callback)是这样的:fun(param,function(err){if(err)console.log(err);doSomething();});如何设置运行此功能的时间限制?例如,我将时间限制设置为10秒。如果在10秒内完成,则没有错误。如果它运行超过10秒,则终止它并显示错误。 最佳答案 Promises是这种行为的理想选择,您可以拥有类似的东西:newPromise(function(resolve,reject){asyncFn(param,function(err,result

javascript - 将异步添加到返回 promise 的函数有什么好处?

在这里预置异步有什么好处?asyncfunctionasyncFunc(){returnnewPromise(function(resolve,reject){});} 最佳答案 async的唯一好处是作为函数将(始终)返回一个promise的视觉标记,您甚至不必扫描函数体来查找return声明。如果您有一行asyncfunction,它可能对一致性很有用。除此之外:它的好处绝对为零。这与将返回值包装在额外的Promise.resolve()调用中一样好。如果您的函数体仅包含带有promise(新promise或其他函数调用)的re

javascript - jQuery 是如何完成它的异步动画的?

...或者更具体地说,他们如何通过同步的javascript创建动画,而无需等待下一个javascript语句。这只是一种好奇。他们使用的是setTimeout()链吗?如果是这样,它们是否设置得早,每个持续时间都比前一个稍长,并且平行运行?或者它们是通过递归函数调用创建的,因此是串联运行的?还是完全不同的东西? 最佳答案 有一个名为setInterval()的setTimeout()替代方法,它会定期调用您作为参数传递的函数。调用setInterval将返回一个值,该值可以传递给clearInterval以停止调用该函数。