我的问题是我有一个加载一些数据的方法。在网站加载之前大约需要10-15秒。我想在网站上添加一个进度条,以便用户向他展示完成加载网站所需的时间。
我用pace.js创建了一个进度条并将其添加到.html中。问题是我需要控制器中的东西,因为html将在我的方法完成后启动。 目前我开始我的网站加载数据,然后我的进度条出现一秒钟。 我可以将我的脚本添加到按钮中还是有其他解决方案?
由于
答案 0 :(得分:1)
进度条在加载发生后初始化。实际上,在将内容发送到浏览器之前,服务器上会发生加载。我会按如下方式解决问题:
我会修改我的代码,以确保在响应浏览器之前代码的缓慢部分不会在服务器上执行,并且可以通过POST请求来访问缓慢的部分。
我会在浏览器中加载一个事件,我会在其中初始化进度条。
初始化进度条之后,我会为慢速任务的每个子任务发送一个单独的AJAX代码(是的,如果可能的话,我会对慢速任务进行分区)。
这些异步AJAX请求会有一个回调,它会根据当前情况刷新进度条的状态。最后一个回调将关闭门(完成进度条的生命周期)。