与Cordova反应原生网络视图

时间:2017-05-16 18:11:57

标签: android cordova react-native

我使用cordova构建应用程序。然而,让它在Android上正确看起来有点过分了。我阅读了反本地文档,并考虑将应用程序的当前状态组合在一起,将其嵌入到Web视图中,并使用react-native构建应用程序的其余部分。

这背后的原因是我觉得使用react-native而不是cordova构建应用程序的android特定ui(比如侧边栏和菜单)更舒服,我想知道这种方法是否有意义。反应原生网络视图与cordova一样强大吗?这有什么意义吗?

谢谢和问候

2 个答案:

答案 0 :(得分:0)

尽管React Native拥有NativeScript组件,但我认为此组件不适合您的方法。

来自文档:

  

WebView 以原生视图呈现网页内容。你可以用它   在Web视图的历史记录中来回导航的组件   配置Web内容的各种属性。

React Native WebView的目的仅仅是#34;渲染网页内容"。

我相信你不能简单地将当前的Cordova代码放在React Native Web View中,并且"它可以工作"。例如,如果您当前的Cordova应用程序不仅仅是简单的HTML页面并使用某些Cordova插件,那么您将遇到问题。

此外,奇怪的架构可能会增加维护成本。

关于React Native和Cordova一样强大:我想说React Native更有前途且非常强大,但实际上Cordova的生态系统更加成熟和一致。也许你应该看看{{3}}。

答案 1 :(得分:-1)

  

反应原生网络视图与Cordova一样强大吗?

     

答案:它比Cordova更强大

与Cordova / PhoneGap不同,您的代码在操作系统上的JS运行时中运行,但UI呈现为本机组件。这使它与Cordova / PhoneGap非常不同。 您可以使用标准平台组件,例如iOS上的UITabBar和Android上的Drawer。这使您的应用程序与平台生态系统的其余部分保持一致的外观和感觉,并保持高质量标准。这些组件可以使用它们的React组件对应物轻松整合到您的应用程序中,例如TabBarIOS和DrawerLayoutAndroid。

对于Cordova,您必须受WebView的限制。由于JavaScript是单线程的,如果您的应用程序代码中有太多事情发生,您将一度遇到问题。比如迟钝的动画等...