【问题标题】:Nativescript - what are the limitationsNativescript - 有什么限制
【发布时间】:2020-03-15 01:17:25
【问题描述】:

我正在考虑为我的下一个移动应用项目从 Cordova 切换到 Nativescript。我查看了 NativeScript 提供的内容,并从中找到了很多我喜欢的内容。不过,我有几个问题

  • 在云中使用 NativeScript 是否会对可以/不能做什么有任何限制?我问这个问题,因为 PhoneGap Build(我不使用)确实施加了一些限制
  • NativeScript 具有用于地理定位、加速度计、蓝牙和 WebSocket 等功能的插件。一般来说,在 Cordova 中,我避开了插件方法,只依赖我自己维护的一个插件,因为 Cordova 中的跨插件通信会导致代码非常混乱。这也是 NS 插件的一个限制,还是我可以依靠能够与 NS 中的 pugin 无缝协作,因为最终结果是一个真正编译的原生应用程序而不是混合应用程序
  • 最后,使用 NativeScript 是否还有其他限制,尤其是在访问其他设备硬件或更奇特的设备 API 方面?

【问题讨论】:

    标签: cordova nativescript


    【解决方案1】:

    在我看来,Cordova 和 NativeScript 无法比较,因为它们完全不同。

    在构建基于 Cordova 的混合应用程序时,您可以从 Web 应用程序重用相同的 HTML/CSS 甚至大部分 JavaScript。

    但是使用 NativeScript,您可以重用您的业务逻辑,并且 UI 必须完全重写,因为它在这里构建了一个完整的原生应用程序。它被视为优于 Cordova 的优势,除非您真的不喜欢应用的原生用户体验。

    但是当谈到限制时,如果您了解框架的核心概念,我会说 {N} 的限制为零。它为您提供来自 JavaScript 的 100% 设备 API 访问。您不必了解 Objective C / Java 或 Kotlin,但仍然可以立即访问所有 API。如果您熟悉 TypeScript,那么使用 tns-platform-declarations 会更轻松,它为所有设备 API 提供智能感知支持。

    由于大部分内容都是 JavaScript,通常很容易覆盖原型链来自定义任何内置组件或插件。

    但老实说,社区相对较小,因此您可能找不到所有插件,而只能找到大部分必需品。您可以查看Marketplace 以获取所有可用插件。如果您是一个优秀的学习者,那么您总是可以从 Slack / SO 平台中的其他开发人员/专家那里获得体面的支持。

    【讨论】:

    • 谢谢。只是另一个问题 - 在 Cordova 中,我实现了自己的插件来处理对地理定位、websockets、加速度计等的访问,因为让一组不同的插件相互“交谈”是最笨拙的。我什至不确定我是否会在 {N} 中使用外部插件,但仍然想知道 - 鉴于 JS 纯粹用作一种方便的高级语言,输出是真正的本机代码,在 { N} - 即更容易让插件无缝协同工作?
    • 插件可以在这里轻松地相互通信,有一些插件已经构建在另一个之上。是的,您将不得不经常使用外部插件,该框架仅涵盖最重要的组件。并非所有应用都需要地理位置/网络套接字,但都需要布局/文本输入/按钮/获取 API 等,这些都是开箱即用的。我希望这能回答你的问题。
    猜你喜欢
    • 2017-03-06
    • 1970-01-01
    • 2020-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多