【发布时间】:2018-01-09 23:47:41
【问题描述】:
对于将所有代码捆绑到一个文件中的离线应用程序,使用代码拆分将app.js 和vendor.js 分成不同的块是否有任何可能的优势?
请放弃使用不同模块加载供应商块的可能性
【问题讨论】:
-
在离线应用中,没有加载资源失败的可能性,所以分块没有关系。
标签: javascript html web optimization webpack
对于将所有代码捆绑到一个文件中的离线应用程序,使用代码拆分将app.js 和vendor.js 分成不同的块是否有任何可能的优势?
请放弃使用不同模块加载供应商块的可能性
【问题讨论】:
标签: javascript html web optimization webpack
代码拆分的主要目标是只为用户提供当时需要的服务。这避免了需要下载单一的 js 包,并且理论上减少了用户在您的应用/网站上进行交互的时间。
无论如何,他们在本地拥有整个捆绑包,所以我看不出有任何理由拆分代码。
编辑:通过拆分代码可能会提高解析时间。这取决于应用程序是如何工作的,如果它是一个反应类型的应用程序,其中视图和路由器处理应用程序中的所有功能,那么在初始加载之后就没有性能可以提高。我建议阅读这篇文章以了解 js 解析时间https://medium.com/reloading/javascript-start-up-performance-69200f43b201
【讨论】:
async/defer 可以尝试,但也值得考虑浏览器缓存已编译的代码,但我没有关于此缓存如何失效的详细信息...