【问题标题】:How does lazy-loading (router) come into play with A Nativescript app?延迟加载(路由器)如何与 Nativescript 应用程序一起发挥作用?
【发布时间】:2017-11-21 19:39:38
【问题描述】:

我试图在这里理解一些基本的东西。

使用网络应用程序 - 当我使用时 - 通过路由器延迟加载模块 - 模块通过来自服务器的 ajax 请求加载并继续前进。

但是原生网络应用程序(Nativescript)呢?我的意思是——假设应用程序不使用互联网连接——他将从哪里获得惰性模块?

这意味着所有模块都必须在 APK 文件中。并且该 APK 应该完全加载才能运行应用。

问题

如何将它视为在 NativeScript 应用程序中加载的惰性模块 - 其中 APK 文件必须首先完全加载? (没有互联网连接)

【问题讨论】:

    标签: android angular nativescript


    【解决方案1】:

    对不起,我不明白你在问什么。

    延迟加载不是从互联网加载的东西。 (只是)在需要时加载某些内容,无论是来自磁盘还是来自互联网。

    使用 nativescript-angular 进行延迟加载主要与启动时间有关。 通常你在启动时不需要所有组件,所以在需要时加载它们将使应用程序启动更快。 (至少理论上,我还没来得及使用它。)

    根据这篇文章:https://www.nativescript.org/blog/optimizing-app-loading-time-with-angular-2-lazy-loading

    Nexus 5 -> 无延迟加载启动:13 秒,“仅”4 秒。

    【讨论】:

    • 类比 windows:假设你加载了一个 16mb 的 exe。仅当读取并加载所有 16mb 时,该应用程序才可见。那么这里有什么懒惰的呢?
    • 其余代码在另一个 32mb 文件中的部分。
    • 但是您没有下载其他 APK 也没有下载任何内容。所以我不明白
    • 我想我现在看到了混乱 :) APK 文件“只是”用于分发的存档,您可以在解压缩器中打开它并查看内容。在 nativescript APK 中,您会从 nativescript 和您添加的模块中找到一些 native-.so-文件以及一些 JS 文件。 vendor.js 和 bundle.js 的默认捆绑方式。 vendor.js 是 js 库,而 bundle.js 主要是您的 js 代码。
    • 所以 APK-zip-alike 包含一个模块文件,将根据需要加载?
    猜你喜欢
    • 1970-01-01
    • 2015-03-28
    • 2017-11-05
    • 1970-01-01
    • 1970-01-01
    • 2018-08-02
    • 2020-07-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多