gpt4 book ai didi

angular - 混合应用程序 - Ionic 与 NativeScript

转载 作者:太空狗 更新时间:2023-10-29 16:47:22 28 4
gpt4 key购买 nike

我在移动领域已经有一段时间了,我们已经有了原生的 Android 和 iOS 应用程序。现在我们公司正计划增强我们的移动网站,我们的团队选择了 Angular 2 + TypeScript + Ionic 2。我们好不容易完成了 Ionic + Angular 中的注册表单开发。现在我开始了解 NativeScript 来开发没有 webview 的混合应用程序,因为它使用 native UI 组件,人们说应用程序的外观和性能会很好。

我有点困惑选择一个1. Angular + TypeScript + Ionic (html, js, css)或者2. Angular + TypeScript + NativeScript (xml, js, css)

此外,我们公司的长期计划是为 iOS、Android 和移动网站维护单一来源

请帮帮我。

谢谢

最佳答案

这是一个非常主观的问题/答案,因为它取决于您想做多少工作。 :-)

首先,在 Ionic/Angular 应用程序中,您基本上是在同时制作相同的网络版本(即它是一个混合应用程序)。性能可能是一个严重的问题,具体取决于您在做什么。简单的屏幕不是那么多;大量数据会带来更大的性能问题。此外,屏幕布局可能会给您带来最多的问题,因为您基本上是在一个小型网络浏览器中编码,该浏览器根据每台设备及其运行的操作系统而具有完全不同的屏幕分辨率。如果您需要更接近 native 性能;你可以做一些事情来让 Ionic 更快(比如使用 CrossWalk),总的来说你可以在 Ionic 中生成一个像样的网络/混合应用程序。

然而,混合动力很可能永远不会有任何接近原生应用的性能,也不会真正像原生应用一样运行,因为它仍然是一个在浏览器中运行的网络应用,试图表现得像原生应用。

现在,如果您正在寻找 native 性能和/或在设备上执行 native 操作的能力,那么使用 NativeScript 可能是更好的选择。您可以获得 native 性能,并可以访问所有 native 控件(即像真正的 ListViews 一样可以处理数千个复杂项目而不会减速)——但代价是您必须为您的创建两个单独的屏幕和单独的 css应用程序。

如果你使用 Angular 或 VueJS;实际逻辑可以在 NativeScript 和您的 Web 应用程序之间共享。现在有几种很好的方法可以做到这一点,比如 xPlat (Angular 代码共享平台)。但在所有这些中,屏幕生成仍然不同。因此,对于您的网络组件/屏幕,您可能有一个网络 mycomponent.html -> <div>{{somevalue}}</div>在 NativeScript Angular 中 mycomponent.html -> <Label text="{{somevalue}}"></Label> .因此,您最终需要在 NativeScript 中进行更多的前期工作,因为您必须创建两个单独的屏幕布局文件。这似乎是个问题;但实际上,这使您实际上可以为手机和/或平板电脑屏幕更好地布局 native 移动版本。它还打开了其他选项,例如可能实时访问 NativeScript 布局中的相机,以及 html 版本中的上传图像文件按钮。

作为使用过这两种技术的人,我在所有新项目中都坚定地站在 NativeScript 阵营;但对于某些人来说,仍然有一些有效的用例可以使用 Ionic/Phonegap/Cordova。如果应用程序已经是基于网络的和/或没有什么真正需要任何复杂的 View 和/或显示大量数据。事实上开源xPlat nStudio 提供的平台支持 Ionic 和 NativeScript 目标。这样您就可以在所有支持的平台之间进行代码共享,并在任何时间点为您的公司做出最佳选择。

例如;也许您从 Ionic/Web 构建开始,因为总体而言它们基本上是同一件事。在 xPlat 代码共享的道路上,当您最终拥有额外的人力/时间和/或需要更好的性能时,您可以轻松地将应用程序的移动部分转移到 Nativescript。

请注意 NativeScript w/Angular 允许代码共享;此外,如果您是 VueJS 的忠实粉丝,NativeScript w/VueJS 还允许代码共享。因此,它们是在您的网站和 NativeScript 应用程序之间进行代码共享的两种绝佳方式,具体取决于您的公司已经使用的内容,同时保持您的移动应用程序的 native 性能。

关于angular - 混合应用程序 - Ionic 与 NativeScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40819520/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com