Javascript 在react中显示加载百分比

Javascript 在react中显示加载百分比,javascript,reactjs,preloader,Javascript,Reactjs,Preloader,嗨,我在react中实现了一个加载程序,如下所示 ReactDOM.render( “已加载”, document.getElementById(“根”) ); body, #根{ 宽度:100%; 保证金:0; 显示器:flex; 对齐项目:居中; 证明内容:中心; 背景色:#36364b; 高度:-可使用webkit填充; } 获取确切负载百分比的唯一方法是使用XHR(AJAX),但这在您的情况下是不可能的。方法是使用AJAX加载脚本文件,然后将加载的代码导入DOM。使用XHR,您可以使用

嗨,我在react中实现了一个加载程序,如下所示

ReactDOM.render(
“已加载”,
document.getElementById(“根”)
);
body,
#根{
宽度:100%;
保证金:0;
显示器:flex;
对齐项目:居中;
证明内容:中心;
背景色:#36364b;
高度:-可使用webkit填充;
}

获取确切负载百分比的唯一方法是使用XHR(AJAX),但这在您的情况下是不可能的。方法是使用AJAX加载脚本文件,然后将加载的代码导入DOM。使用XHR,您可以使用此处所述的内容:但是,由于脚本位于不同域的CDN中,您将遇到由CORS/跨站点保护引起的问题。或者您的CDN允许专门从您的域(或任何域)加载内容,或者您不能这样做。在中查看更多信息

另一种更不精确的方法是估算加载文件与待加载文件的总百分比(但不知道每个文件的加载百分比)。您可以延迟从CDN加载脚本,启动自己的“加载管理”脚本,然后在dom中逐个插入标记(使用类似于中或中所述的内容),等待窗口加载(onload)事件

通过这种方式,您将了解加载过程的进展情况,但很缓慢,因此使用这些信息,您可以使用进度条绘制平滑的动画

但请注意:这可能会对加载时间产生负面影响,因为逐个加载脚本文件通常比一次加载所有脚本文件慢(因此浏览器可以管理脚本加载过程,通常并行加载)


加载条通常用于加载大量资源的页面,这些资源通常位于同一个域上,或者至少位于您拥有的域上,因此您可以成功地设置CORS以允许XHR(AJAX)从相同或不同的域加载进程。请参阅此处的更多信息,但这不适用于您的情况,只要您不能修改CDN服务器。如果服务器允许CORS,您很幸运,如果不允许,您可能什么都做不了。

没有干净的方法可以做到这一点。但是您可以查看这些答案,以便实现CDN加载g百分比战争机器是,检查this@warmachine是的,这些答案都有点粗糙,没有显示实际的加载百分比。我会坚持我现在得到的。谢谢你的建议。