【问题标题】:React Navigation v3 vs. React Native Navigation v2React Navigation v3 与 React Native Navigation v2
【发布时间】:2019-03-28 11:20:49
【问题描述】:
【问题讨论】:
标签:
reactjs
react-native
react-navigation
react-native-navigation
【解决方案1】:
恕我直言,react-navigation 比 react-native-navigation 更好。我确实有很多机会比较它们(在 RN 开发中长达 2 年)。 React-navigation 现在非常快,如果你使用 redux 等进行正确开发,你将不会看到性能问题。但另一方面,react-native-navigation 更加原生,它肯定会给您的应用程序带来很多崩溃,因为在底层有很多带有原生问题的原生代码。很容易通过 github 页面上的问题数量来衡量。
【解决方案2】:
对我来说 react-native-navigation 比 react-navigation 更好。这不仅仅是关于性能。如果您重视应用程序中的原生感觉,那么您没有任何其他选择,因为 RNN 具有用户期望的内置原生功能,例如向后滑动时的过渡动画、Peak 和 POP 或共享过渡 ( react-navigation 有第三方包,但第三方意味着更多问题)。没有这些东西,您的应用程序会立即感觉混合。更不用说操作系统制造商总是有可能实现将流行的新本机功能,而您的 react-navigation 应用程序将无法支持它。此外,我有一个下载量为 100K 的应用程序,RNN V2 从未导致生产崩溃。
对我来说,使用 RNN 进行开发更有趣。 RNN 为任何屏幕、模态或覆盖创建一个新的 App Root,因此它很容易实现和使用像小吃栏或电子表格这样的组件——你不需要在任何你想使用它的地方插入一个组件。您只需从应用程序的任何部分快速调用带有导航 API 的模态/叠加层,而无需担心传递 redux 方法或对小吃栏或模态的引用。
根据我使用 React Native 的经验 - 尽可能使用原生模块而不是 JS