如果我开始使用React / flux,我应该从头开始重新创建我的所有页面(html和css)吗?

时间:2015-03-03 16:56:36

标签: javascript reactjs reactjs-flux flux

我已经建立了几页我的应用程序。由于我需要一个javascript框架和第二个动态页面,我想我会尝试React / Flux。

尽管有很多阅读内容,但我不能完全理解你是否可以保留我的EXISTING代码库(html / js),并且只在网页的某些需要与之交互的块上使用React(jsx,modules)数据库/动态实现?

让我们举一个例子: 我的页面有很多东西:bootstrap我调整了很多(用css),实际上是在场景javascript / DOM ex用于下拉列表,以及其他东西),respond.js用于在ie8上启用媒体查询(使用我的猜测) DOM),以及许多第三方工具,如intercom.io甚至谷歌分析js跟踪窗口底部的窗口。 你可以在这里看到页面的样子。

enter image description here

我的需求:我只需要块(D)上的动态调整和实时功能,所有其他功能,标题(B),内部通信(C)以及其余部分可以保持原样,它可以节省一些如果我可以将它们保存在当前的html代码中,那就太多了。

所以这是我的问题:

  • (1)我是否必须在页面上转换所有反应或只放入jsx /反应块(D)并保持其余部分原样?

  • 与(1)相关我想利用React(虚拟DOM和差异)带来的主要优势,如果整个页面不在React上,我仍然可以使用它吗?

  • 如果答案基本上是"它全部或全部,你必须全部反应jsx并重做你的整个页面",转换你的HTML和找到使用DOM的所有js脚本的替代品,如下拉列表,灯箱,intercom.io脚本,谷歌分析脚本,那么难吗?我是说还是可以保留css并使用它来更改html http://facebook.github.io/react/html-jsx.html?这真的很容易,但我担心这里有一个问题... :)

2 个答案:

答案 0 :(得分:1)

我是React的新手,但是根据我收集的内容,您可以根据需要使用React代码。您不必重新编写整个应用程序。这包括能够在您需要的地方使用您概述的功能。

答案 1 :(得分:1)

就应用程序的视图层而言,一切都可以通过React完成 (是的反应可以做你需要的一切)

我建议的第一件事是前往文档的反应网站,使用 Google &amp ;;做一些教程。 YouTube然后开始重新构建您的应用程序,反应但不完全。 (使用JSX)。

因为您现在了解React如何工作以及如何使用道具和状态,您可能最终会同时合并您应用的片段。

最重要的考虑因素是背景。 React只是Javascript,因此您可以绑定,调用和应用现有应用程序中的任何对象。

var blockA = React.createClass~
    blockB = React.createClass~
    blockC = React.createClass~
    blockD = React.createClass~

React只是组件,每个块都是一个组件。

但我不能强调更多,理解反应的基本原则,它根本不难。

编辑...

是使用JSX我认为它最初是愚蠢的,但它非常棒!

使用DOM操作它可以全部或全部。 React使用其DOM副本来更快地操作实际DOM。对于没有触及DOM的部分代码,它不会在React中产生巨大的差异,但React通过将状态更改传递给其组件的子项来实现漂亮的工作流程。真的,它取决于你但是如果你正在使用React做所有DOM的反应。你尝试做的70%以上可能是DOM操作。

我的建议总的来说,不要过多考虑如何"硬"这将是。想想你可以多快地学习基础知识。它很容易掌握。