我已经构建了许多角度应用程序,并且每次尝试改善应用程序性能,体系结构..等
某些人遵循的一种策略是将一个缩小文件中的所有JavaScript文件串联,也将所有样式表文件中的所有样式表中的文件置于一个缩小的文件中,但是,这与Lazyload概念相反,例如Angular OC lazyload 加载状态状态。以这种方式文件:
//inject dependency
var myApp = angular.module("MyApp", ["oc.lazyLoad"]);
//load file
myApp.controller("MyCtrl", function($ocLazyLoad) {
$ocLazyLoad.load('testModule.js');
});
问题是哪种模式将提供更好的性能串联或懒惰加载?
取决于您的应用程序大小。如果很小 - 将所有JS文件串联成单个文件就足够了,并将其缩小。如果您有大型模块化应用程序,则有可能会有一些用户不会访问所有模块,在这种情况下,最好将单个JS文件分成一些块,然后在需要时懒惰。
答案取决于您正在构建的应用程序。但是我将向您解释差异,以便可以帮助您做出决定。
condenate在单个文件中的优势
- 它肯定会提高您的应用速度(除了第一次以后您会获得缓存福利)
- 它将减少对您的服务器或托管静态资源的静态服务器的请求数。
懒惰加载的优势
- 初始页面加载将更快地比较以前的速度,但是在使用您的应用程序的用户时会延迟,因为您会按需加载资源(对于某些类型的应用程序而言,这可能对用户体验不利)。
- 将帮助您最初减少服务器的请求数量,但是由于用户正在使用该应用程序,因此必须一一下载所有资源。
所以最后我更喜欢第一个选项。
希望这对您有帮助:)