您好我在使用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代码吗?
答案 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