【问题标题】:Hybrid (React and ReactNative)混合(React 和 React Native)
【发布时间】:2015-08-14 23:41:03
【问题描述】:

我们正在计划一个同时针对 iOS 和浏览器的项目,并且很好奇我们如何使用 React 在两者之间尽可能多地共享。

我们能否在(普通)React 中构建项目,并在为 iOS(以及更高版本的 Android)构建时以某种方式切换到 React-native?

【问题讨论】:

  • Ionic (AngularJS) 给你你想要的。但我确实理解你为什么要使用 React 而不是 Angular。对我来说,ReactNative 创建了一个 www 文件夹就像 iosandroid 文件夹一样棒。我不介意浏览器的外观和行为类似于 iPhone。

标签: reactjs react-native


【解决方案1】:

React 和 React Native 不是像Tom Occhino said 那样“一次编写,随处运行”的框架......它更像是一种“一次学习,随处编写”的技术。话虽如此,您的开发人员将在编写您的第一个实现后熟悉语法/最佳实践,然后应该能够顺利过渡并将这些相同的技术应用到浏览器或移动应用程序中。

您的大部分实现以及它们如何协同工作在很大程度上取决于您从中获取数据的 API。如果您的 API/数据源可靠......那么剩下的就是小菜一碟了!

所以回答您的问题...确保您可以在 React 中构建项目,然后在构建移动应用程序时切换到 React Native。事实上,这就是在 React/React Native 团队不知疲倦地工作的人们希望你能做到的。你能使用完全相同的代码吗?没有。

【讨论】:

  • 谢谢,这或多或少也是我理解的。然而,让我好奇的是为什么。由于 React 的渲染器支持多个后端(iOS、DOM),所以不应该有任何技术可以阻止这种情况。 (我知道 UI 设计(以及该领域的最佳实践)可能会保证特定的实现。)
  • 只是环境不同并且需要不同的实现(如您所说)。显然,ListView 元素(以及所有这些元素)在 Web 应用程序中没有多大意义,但在 iOS 环境中却非常有意义。同样, div 在 iOS 中没有位置,但在 Web 应用程序中非常有意义。这只是两个不同的世界,如果试图将两者硬塞到“一次编写,随处运行”的解决方案中,将会使事情变得混乱且不那么直观。
猜你喜欢
  • 2020-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-19
  • 2022-10-25
  • 2020-09-14
  • 2019-01-13
  • 2022-01-21
相关资源
最近更新 更多