做反应本机使用相同的代码为ios和android或两个平台代码应单独编写?

时间:2016-08-02 12:20:01

标签: cordova reactjs react-native hybrid

您好我在使用Ionic Framework和其他一些框架工作Cordova方面有很好的经验。我个人对Ionic性能不满意,所以我打算从Ionic切换到React Native。

我只是想在切换之前知道一些事情。在Cordova项目上为Android编写应用程序时,相同的代码将用于ios和windows。因此它节省了大量的代码编写。您只需使用一行命令添加平台即可。但我不确定React。

React Native会发生同样的事吗? Android和Ios在不同的平台上使用相同的代码,或者我们必须为另一个平台编写所有代码,或者共享一部分代码?

Ionic框架还附带了许多组件和预构建的UI。做反应原生还提供UI和组件吗?

我应该首先学习React js来启动React Native还是我可以一起学习React Native和React Js?

我们可以在网络平台上使用React Native代码吗?

1 个答案:

答案 0 :(得分:11)

所以,让我们从React Native口号“一次学习,随处写作”开始吧。 这几乎解答了你的第一个问题。你必须为你的Android应用程序和你的iOS应用程序编写代码。这是因为android和iOS有不同的原生组件。 您可以重用一些代码,如逻辑,如何分发数据(最多)等,但您必须调整它以使用android和iOS的本机组件。 编辑:这是之前的做法,但现在已经过时,因为你现在只需要写一次

第二个问题。 React Native使您可以利用许多已知的组件。如果社区不在Facebook已发布的内容中,社区还可以启用其他不同的组件。 如果由于某种原因想要某个没有人为其创建端口的东西,则需要执行一些本机编程来启用此类组件。

第三个问题。当然最好先学习React,但在编写React Native时可以轻松学习React。 React Native Playground是一个玩React Native的好地方。 编辑:RN Playground不再有效,但还有其他地方可以与RN一起玩Expo 同样,这取决于您喜欢学习新框架和语言的方式。

第四个问题。不,您不能将React Native代码用作Web应用程序。这是因为您的React Native应用程序将使用本机组件。在iOS中,您使用的<View /><div />相同(非常多)。 如果您想在之后创建Web应用程序,这并不意味着您不会空手而归。您可以使用部分布局并重新编写它们以在Web上工作。比如将视图转换为div,将图像转换为img等。

GL