我有一个来自webpack构建的大型javascript正在加载:
<script src="application.bundle.js"></script>
我想在脚本加载时添加进度条。在chrome dev工具时间轴中,我可以看到大部分加载时间都花在这里:&#34;评估脚本&#34;,这是可以理解的。有没有办法获得进展,或者至少是一个完成事件,以了解脚本何时完成评估?
我可以在应用程序脚本中执行某些操作,例如window.appLoaded = true
,并定期查找。有没有办法在不修改应用程序脚本的情况下执行此操作?
答案 0 :(得分:1)
如果你想在加载文件后进行回调,我建议你在完成时使用回调函数的函数调用异步加载它。
你可以在调用loader函数之前建立一个进度微调器,回调将它取下来。像这样:
function myLoadScript( ) {
showMyProgress();
loadScript( 'application.bundle.js', hideMyProgress );
}
此页面显示了load scripts asynchronously的几种方法。这里显示了一个通用的loadScript()
函数。