我正在尝试创建一个适用于网络和移动设备的应用程序。我们的想法是创建反应组件,这些组件在渲染方式上有所不同,但共享逻辑。
React v.014博客文章称“我们正在将主要的反应包分成两部分:react和react-dom。这为编写可以在React和React Native的Web版本之间共享的组件铺平了道路。 react包包含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.Component而不是react-native的组件。
这令人困惑,因为0.14版本似乎表明这正是移动fw的重点。让React创建组件,让react-dom处理DOM,让react-native处理ios / android视图。
我认为这是一个绝妙的主意,但我似乎无法通过这个特殊问题。任何想法,想法将不胜感激。
由于
答案 0 :(得分:0)
以这种方式做出反应原生工作的过渡正在进行但尚未完成。请参阅Tomcat Ant tasks。
我们正在努力停止使用我们的分叉,以便人们可以使用require('反应')并按需要工作(' react-native'),这将使所有第三方插件都可以在两个地方工作而不做任何事情。
现在我们无法在开源版本的react-native上使用中继而不需要它,这是一个巨大的耻辱,我们正在努力解决这个问题。