首页 文章

在React和React-Native之间共享组件/逻辑

提问于
浏览
3

我试图创建一个web和移动应用程序目标 . 我们的想法是创建反应组件,这些组件在渲染方式上有所不同,但共享逻辑 .

React v.014博客文章称“我们正在将主要的反应包分成两部分:react和react-dom . 这为编写可以在React和React Native的Web版本之间共享的组件铺平了道路 . 反应包包含React.createElement,.createClass,.Component,.PropTypes,.Children以及与元素和组件类相关的其他帮助程序 . 我们将这些作为构建组件所需的同构或通用帮助程序 . “

我找到了一个很好的例子(http://blog.benoitvallon.com/projects/a-mobile-desktop-and-website-app-with-the-same-code/),它使用相同的概念并完成了结果(react-native 0.13.6并反应0.14.2) .

在这段代码中,您将看到一些关于如何扩展react-native命名约定系统以包含Web版本的智能想法 . 在我升级到最新的react-native时,它会抱怨任何使用react包中的React.Component而不是react-native的组件 .

这是令人困惑的,因为0.14版本似乎表明这正是移动fw的重点 . 让React创建组件,让react-dom处理DOM,让react-native处理ios / android视图 .

我认为这是一个绝妙的主意,但我似乎无法通过这个特殊的问题 . 任何想法,想法将不胜感激 .

谢谢

1 回答

  • 0

    以这种方式做出反应原生工作的过渡正在进行但不完整 . 见AMA .

    我们正在努力停止使用我们的fork,以便人们可以使用require('react')并且与require('react-native')一样工作,这将使所有第三方插件都可以在两者上工作没有做任何事的地方 . 现在我们不能在反应原生的开源版本上使用relay而不需要它,这是一个巨大的耻辱,我们正在努力修复它 .

相关问题