如何向 chrome 指示 angular 8 中功能模块的下载优先级(低、高或最高)?

How to indicate to chrome the download priority (low, high or highest) of the feature modules in angular 8?

我已经在 angular 中编写了自定义的模块预加载策略和加载延迟以模拟优先级顺序 (Example)。虽然预加载的一切都正确加载,但在 Chrome Devtool 中,模块以低优先级下载,我如何设置 chrome 从 angular 8 下载优先级?

严格来说,没有特定的 Angular 方式来为 lazy-loaded/preloaded 组件分配优先级。不管怎样,我会尽量给你一些想法,因为我也对这个问题很感兴趣。

我想你已经读过Google关于网页上下载资源的优先级的内容:

遗憾的是,尽管这些 solutions/workarounds 似乎在 Chrome 中运行良好,但它们不是任何标准的一部分,因此无法保证其他浏览器会考虑使用它们来调整资源优先级.

作为Angular解决方案,我想到的是使用APP_INITIALIZER加载任何需要"high"优先级的依赖项,或者至少在应用程序初始化时加载(就在启动之前)。

另一个可能有用的想法是使用 Service Workers,您可以在其中指定缓存策略,包括以性能为导向的策略。正如我在检查我正在处理的网站时发现的那样,Service Worker 处理的资源会以高优先级下载,但我想你的情况可能会有所不同。

希望对您有所帮助,智利向您致以最诚挚的问候。
何塞·伊格纳西奥