跳到主要内容
CNode

浏览器端 JS 代码怎样 block 自身的执行并且能恢复?

社区
Jjiyinyiyong发布于 13 年前最后回复 13 年前
243400

想... 我等待 websocket 传回数据期间 JS 对执行过程进行中断, 等到数据传送完成再继续执行余下的代码, 想了半天没找到方案,, 用 XMLHttpRequest 的话对于同步的 request 是不能设置 timeout 的, 而 while 死循环无法接受... 不知道还有 JS 代码实现上的方案可以找么

查看回复

回复 (2)

J
jiyinyiyong#213 年前
引用 shiedman中断执行无外乎暂时禁止用户输入,或者等待服务器返回数据以更新界面。一般来说常见的处理方法不是弹出个waiting提示框之类的,然后在数据返回后取消此提示框吗。 另外就算不能设置timeout,...

是比较少见的场景.. 我尝试用 websocket 来实现浏览器端模块加载 因为需要在 require('filename') 的时候等待请求返回的数据, 必须整个卡住 JS, 为了兼容 Node 上的常用规范语法, 我才去想这种邪门的东西... .. 现在想想应该改变的是 Node 才对..

S
shiedman#113 年前

中断执行无外乎暂时禁止用户输入,或者等待服务器返回数据以更新界面。一般来说常见的处理方法不是弹出个waiting提示框之类的,然后在数据返回后取消此提示框吗。 另外就算不能设置timeout,完全可以setTimeout(function(){//中断XMLHttpRequest ......

参与回复

登录后即可参与回复。登录