假设我有一个由ReactDOM呈现的客户端呈现的React应用程序,
<body>
<div id="root"></div>
<script src="/mybundle.js"></script> <!-- rendering happens here -->
<script async src='https://cdn.third-party.com/segment.js'></script>
<script async src='https://cdn.third-party.com/google_analytics.js'></script>
<script async src='https://connect.facebook.net/en_US/fbevents.js'></script>
<script async src='https://connect.facebook.net/en_US/sdk.js'></script>
<!-- etc.. various other 3rd party trackers and crap we have to load -->
</body>
我的理解是,这些第三方库将延迟
onload
事件,直到加载它们的各种脚本,即使指定了async
。这会延迟我的react应用程序的呈现吗?
我已经测试过了,如果我删除了所有第三方javascript,那么我们的第一次有意义的绘制在一台受限制的机器上会快2秒。这些库都证明了它们不会减慢你的网站速度,但是实验证明它们确实会。
与第三方库的性能,
删除所有第三方库时的性能,
有没有什么方法可以加载这些第三方库,而不会破坏客户端呈现的单页应用程序的性能?
我知道。。2.75秒仍然慢得可怕。在进行一次大的重写之前,我正在努力寻找快速的赢家。
最佳答案
我的消息来源表明它不会等待onload事件。
链接源:
ReactDOM - Offial Docs
React - Edureka Blog
图片来源: