Cordova:在 Angular 8 延迟加载实施后,应用程序无法启动,并且在初始屏幕显示白屏后
Posted
技术标签:
【中文标题】Cordova:在 Angular 8 延迟加载实施后,应用程序无法启动,并且在初始屏幕显示白屏后【英文标题】:Cordova: After Angular 8 lazy load implementation, application does not start and after splash screen shows white screen 【发布时间】:2019-06-26 07:10:59 【问题描述】:设备: - 安卓和模拟器。
详情: - 使用 Cordova 的混合应用程序。 - 在 Web 应用程序中实现 Angular 8 延迟加载。
场景:在为 Web 应用程序实现延迟加载并创建为 android (.apk) 构建的 Cordova 9.0 之后。应用程序安装并打开时显示启动画面,但之后显示白屏并挂起。
在模拟器上调试时出错(在真实设备中的行为相同 也):主线程上的工作太多。
问题:如何在没有 CORDOVA 的情况下实现延迟加载 应用程序崩溃?
【问题讨论】:
【参考方案1】:我们已通过在创建 .dist 文件后在 index.html 中添加“type=text/javascript”来解决此问题。
由于角度差异加载 runtime.js,polyfill.js 被添加到 indexl.html 文件中,并且它们具有 TYPE=MODULE 但不存在“type=text/javascript”(如果包含它会很有帮助)因此,Web 浏览器在识别 MIME 类型时没有任何问题,但如果我们通过 cordova 使用相同的 .dist 构建 apk 或 ipa,则 Android 本机无法识别 MIME 类型,因此会引发错误。
谢谢。
【讨论】:
以上是关于Cordova:在 Angular 8 延迟加载实施后,应用程序无法启动,并且在初始屏幕显示白屏后的主要内容,如果未能解决你的问题,请参考以下文章
为啥 angular/cordova 应用程序突然重新加载?