首页 > 解决方案 > 以角度预加载特定组件

问题描述

我对 Angular 很陌生,可能缺少一些明显的解决方案。当应用程序脱机时,由于明显的脱机错误(ChunkLoadError:加载块 22 失败),我无法显示组件 AlertComponent。如果该组件在离线之前已经显示,那么一切都会按预期工作 - 为该组件加载脚本,即使在离线之后也会显示警报。那么问题是如何预加载这个组件,以便在离线后可以访问?或者其他一些解决方案更好?

据我了解,预加载策略PreloadAllModules不适用于这种情况,因为它会预加载为路由定义的组件。

我使用离子 5.5.2,角度 10

标签: angularionic-framework

解决方案


为您的网站或 Web 应用程序添加离线功能的最佳方式是将其变成“渐进式 Web 应用程序”。具体来说,您需要添加一个服务工作者来预取和缓存所需的(静态)资源。

Angular 已经支持服务工作者。您可以使用以下命令将服务工作者添加到您的应用程序:

$ ng add @angular/pwa --project *project-name*

有关详细信息,请参阅Angular 文档


推荐阅读