我有一个非常慢的编译和输出更改的结果。
我当前的ng服务器在文件中的简单文本更改后,在大约20秒内运行一次更新。(实际上编译时间很短,在3-5秒内),另外15秒是浏览器重新加载的过程。我在网络选项卡中发现,耗时最长的进程是websocket,而它需要13秒。
对于这种情况,可能的根本原因是什么?是不是因为我使用了像rxjs和lodash这样的外部库?是因为我在每个scss文件中都导入了bootstrap css吗?或者是因为我的组件结构?(我有多个模块)
我想知道如何将其缩短到3-5秒,因为这将极大地影响我的工作效率。
谢谢
以下是包的大小:

下面是我的管理模块路由:

发布于 2019-02-06 03:52:54
我们从评论和聊天中得出了这个答案的几个部分,并在这里添加了一个摘要答案。
快速感谢link from @ISanchez,这是一个让人们开始并熟悉Angular性能的好地方。
首先,我们将解决实时重新加载(构建更新)缓慢的问题。试着制作更小的模块。这将允许一次使用更少的代码进行重建。一旦你改变了一个模块,它就需要重新构建,这可能需要更长的时间,模块越大。虽然这不是事实或标准,但我在项目上尽可能地设置预算,试图将我的模块保持在200kb以下(供应商和初始模块除外)。这样,我通常就有了非常可接受的重建时间:)
较长的加载时间似乎在一定程度上与在多个地方导入所有引导有关。将其精简到适当的导入/混合应该会减轻一些这种情况。另一个有用的重构是将模块拆分为延迟加载的模块。Admin模块相当大,甚至可以分成多个admin模块(每个模块都导入了共享的管理功能)。“共享功能”建议在Angular material2 repository中进行了很好的建模,每个模块基本上都导入了操作所需的内容。如果你仍然有延迟加载的模块太大的问题,你也可以指定non child route modules to be lazy loaded (就像一个大的“共享功能”模块)。
发布于 2019-02-06 03:18:45
https://stackoverflow.com/questions/54540626
复制相似问题