考虑拥有一个规模的Web Worker或具有慢速Internet连接的客户,因此下载可能需要一段时间。在此期间,我们希望能够看到客户已经下载了多少以及有多少尚未完成。什么是黄金标准来实现它? Web Worker界面是否提供有关该信息的任何信息?
我可以想象做类似于
的事情new Worker( 'intermediateWorker.js' );
并告诉它,实际的工作脚本是什么。progress
事件监控进度,并postMessage
将其发送到其父站点eval()
执行代码并在评估代码后通知其父站点,最后从所有事件侦听器取消订阅。但是,出于好的理由,我想避免使用eval和过于复杂的中间脚本:
file:
协议的错误,托管巨大代码文件的CDN等。