0

我已经构建了许多 Angular 应用程序,每次我尝试提高应用程序性能、架构......等等。

有些人遵循的一种策略是将所有 JavaScript 文件连接到一个缩小文件中,并将所有样式表文件连接到一个缩小文件中,但这与延迟加载概念相反,例如 angular oclazyload以这种方式加载状态文件:

//inject dependency
var myApp = angular.module("MyApp", ["oc.lazyLoad"]);

//load file
myApp.controller("MyCtrl", function($ocLazyLoad) {
  $ocLazyLoad.load('testModule.js');
});

问题是哪种模式将提供更好的性能连接或延迟加载?

4

2 回答 2

1

答案取决于您正在构建的应用程序。但我会向您解释差异,以便帮助您做出决定。

连接到单个文件的优点

  1. 它肯定会提高你的应用程序速度(除了以后第一次你会得到缓存的好处)
  2. 它将减少对您的服务器或托管静态资源的静态服务器的请求数量。

延迟加载的优点

  1. 与以前相比,初始页面加载会更快,但在用户使用您的应用程序时会有延迟,因为您将按需加载资源(这可能不利于某些类型的应用程序的用户体验)。
  2. 最初将帮助您减少对服务器的请求数量,但随着用户使用该应用程序,它必须一一下载您的所有资源。

所以最后我更喜欢第一个选项。

希望这可以帮助你:)

于 2016-06-21T18:35:27.447 回答
1

取决于您的应用程序大小。如果它很小 - 将所有 js 文件连接成一个文件并缩小它就足够了。如果您有大型模块化应用程序,则可能有一定比例的用户不会访问所有模块,在这种情况下,最好将您的单个 js 文件拆分为一些块,并在需要时延迟加载。

于 2016-06-21T18:13:41.737 回答