【问题标题】:How to speed up loading time on initial load in Angular 7?如何加快 Angular 7 中初始加载的加载时间?
【发布时间】:2020-11-21 21:59:30
【问题描述】:

我创建了 Angular 应用程序,并将单个模块拆分为一组较小的功能模块并延迟加载它们。并从索引中删除了不必要的脚本和样式.html 并在组件级别加载它。最终部署文件后第一次加载时间太慢,

我已尝试使用 --prod 现在文件大小约为 3MB 有没有其他可以加快速度的方法

下面是我的构建文件大小的屏幕截图 enter image description here

【问题讨论】:

  • 在那个文件块 {33} js 文件大小比较多,如何减小?
  • 您是否尝试过减小图像尺寸并删除不需要的资产。我希望你正在使用 AOT
  • @RahulCv 是的,我已经从资产中删除了不需要的图像,文件大小也变小了。我的主要问题是那个文件块 {33} js 文件大小(在那个图像中)更多如何减少它?
  • 你现在使用什么延迟加载策略?在这种情况下你不能使用 Eager 延迟加载

标签: angular angular7 ng-build


【解决方案1】:

速度优化不仅仅依赖于延迟加载。

如果您确定优化了代码,删除了不必要的导入、样式、脚本,那么您必须应用其他解决方案,例如:

  • 将所有子路由设为延迟加载。
  • 使用 Angular Universal 进行服务器端渲染
  • 从您的服务器提供预压缩的内容。如果使用 Nginx 部署它,则可以启用 Gzip 压缩。
  • 更新静态资产的缓存策略。这也应该从服务器端进行配置。
  • 图像延迟加载。如果第一页上有多个图像,则首先仅加载可见图像,然后在滚动时加载其他图像。你可以找到一个 Angular 模块。
  • 仅在需要时加载外部脚本。

还有更多的技术可以用于提高速度。

您可以使用LighthouseGTmetrix 测试您的应用。这些工具会建议您应用解决方案,您可以按照它们进行操作。

【讨论】:

  • 我尝试了 gzip 并压缩了所有 file.gz 格式,但不知道必须将哪个文件上传到服务器才能生效。当我压缩它时,每个文件显示两个文件。一个正常,另一个一个压缩。
  • 你可以只压缩所有文件,所以基本上你用ng build --prod和gzip所有jscsshtml文件在dist中构建应用程序
  • 我正在使用 filezilla 应用程序让网站上线,所以当文件我必须上传 .gz 文件或 .js 文件时
  • 你只上传.gz文件
  • 这是因为你没有配置你的服务器。你用什么来部署?
猜你喜欢
  • 2017-09-29
  • 2019-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-06
  • 1970-01-01
  • 2014-05-14
相关资源
最近更新 更多