如果我开始使用 React/flux,是否应该从头开始重新创建所有页面(html 和 css)?
Should I recreate all my page from scratch (html and css) if I begin using React/flux?
我已经构建了我的应用程序的几个页面。因为我需要一个 javascript 框架和亚秒级动态页面,所以我想我会尝试 React/Flux.
问题是尽管阅读了很多书,但我不完全理解您是否可以保留我现有的代码库 (html/js) 并且只在需要的网页的某些块上使用 React(jsx、模块)与 database/dynamic 实现互动?
举个例子:
我的页面有很多东西:bootstrap 我调整了很多(使用 css)实际上在幕后使用 javascript/the DOM 用于下拉菜单和其他东西) ,respond.js 用于在 ie8 上启用媒体查询(我猜使用 DOM),以及许多第三方工具,如 intercom.io 甚至 google analytics js tracking window在我的屏幕底部。
你可以在这里看到页面的样子。
我的需求:我只需要块(D)上的动态调整和实时功能,所有其他的,头部(B),对讲机(C)等可以保持原样,这样可以节省如果我可以将它们保留在当前的 html 代码中,我会花很多时间。
所以这是我的问题:
(1) 我是否必须转换页面上的所有内容以做出反应或仅放入 jsx/react 块 (D) 并保持其余部分不变?
关于(1)我想利用React带来的主要优势(虚拟DOM和差异),即使整个页面不在 React 上?
如果答案基本上是 "it's all or nothing, you've got to do it ALL in react jsx and redo your whole page",请转换您的 html 并找到所有使用 DOM 的 js 脚本的替代品,例如下拉菜单、灯箱, intercom.io 脚本, google 分析脚本那么难吗?我的意思是,或者我可以保留 css 并仅使用它来更改 html http://facebook.github.io/react/html-jsx.html 吗?那真的很容易,但我担心这里有一个陷阱...:)
我是 React 的新手,但根据我收集到的信息,您可以根据需要加入 React 代码。您不必重新编写整个应用程序。这包括能够在任何需要的地方使用您概述的功能。
就应用的视图层而言,一切都可以用 React 完成
(是的,react 可以做你需要的一切)
我建议的第一件事是前往文档的反应站点,使用 Google 和 YouTube 做一些教程,然后开始重新使用 React 但不完全 从全新构建您的应用程序。 (使用 JSX)。
因为您现在了解了 React 的工作原理以及如何使用 props 和状态,您最终可能会一次合并应用程序的片段。
要考虑的最重要的事情是上下文。 React 很简单 Javascript,因此您可以绑定、调用和应用现有应用程序中的任何对象。
var blockA = React.createClass~
blockB = React.createClass~
blockC = React.createClass~
blockD = React.createClass~
React 只是组件,每个块都是一个组件。
不过我也无可厚非,理解react的基本原理,一点都不难。
编辑...
是的,使用 JSX 我最初认为它很愚蠢,但它非常棒!
通过 DOM 操作,它是全有或全无。 React 使用它的 DOM 副本来更快地操作实际的 DOM。对于不触及 DOM 的部分代码,它不会在 React 中产生巨大差异,但 React 有一个漂亮的工作流程,可以将状态更改传递给它的子组件。这真的取决于你,但如果你正在使用 React,请在 React 中做所有 DOM 的事情。您尝试做的事情中有 70% 以上可能是 DOM 操纵。
我的总体建议是,不要想太多 "hard" 会怎样。想想你能多快学习基础知识。很容易掌握。
我已经构建了我的应用程序的几个页面。因为我需要一个 javascript 框架和亚秒级动态页面,所以我想我会尝试 React/Flux.
问题是尽管阅读了很多书,但我不完全理解您是否可以保留我现有的代码库 (html/js) 并且只在需要的网页的某些块上使用 React(jsx、模块)与 database/dynamic 实现互动?
举个例子: 我的页面有很多东西:bootstrap 我调整了很多(使用 css)实际上在幕后使用 javascript/the DOM 用于下拉菜单和其他东西) ,respond.js 用于在 ie8 上启用媒体查询(我猜使用 DOM),以及许多第三方工具,如 intercom.io 甚至 google analytics js tracking window在我的屏幕底部。 你可以在这里看到页面的样子。
我的需求:我只需要块(D)上的动态调整和实时功能,所有其他的,头部(B),对讲机(C)等可以保持原样,这样可以节省如果我可以将它们保留在当前的 html 代码中,我会花很多时间。
所以这是我的问题:
(1) 我是否必须转换页面上的所有内容以做出反应或仅放入 jsx/react 块 (D) 并保持其余部分不变?
关于(1)我想利用React带来的主要优势(虚拟DOM和差异),即使整个页面不在 React 上?
如果答案基本上是 "it's all or nothing, you've got to do it ALL in react jsx and redo your whole page",请转换您的 html 并找到所有使用 DOM 的 js 脚本的替代品,例如下拉菜单、灯箱, intercom.io 脚本, google 分析脚本那么难吗?我的意思是,或者我可以保留 css 并仅使用它来更改 html http://facebook.github.io/react/html-jsx.html 吗?那真的很容易,但我担心这里有一个陷阱...:)
我是 React 的新手,但根据我收集到的信息,您可以根据需要加入 React 代码。您不必重新编写整个应用程序。这包括能够在任何需要的地方使用您概述的功能。
就应用的视图层而言,一切都可以用 React 完成 (是的,react 可以做你需要的一切)
我建议的第一件事是前往文档的反应站点,使用 Google 和 YouTube 做一些教程,然后开始重新使用 React 但不完全 从全新构建您的应用程序。 (使用 JSX)。
因为您现在了解了 React 的工作原理以及如何使用 props 和状态,您最终可能会一次合并应用程序的片段。
要考虑的最重要的事情是上下文。 React 很简单 Javascript,因此您可以绑定、调用和应用现有应用程序中的任何对象。
var blockA = React.createClass~
blockB = React.createClass~
blockC = React.createClass~
blockD = React.createClass~
React 只是组件,每个块都是一个组件。
不过我也无可厚非,理解react的基本原理,一点都不难。
编辑...
是的,使用 JSX 我最初认为它很愚蠢,但它非常棒!
通过 DOM 操作,它是全有或全无。 React 使用它的 DOM 副本来更快地操作实际的 DOM。对于不触及 DOM 的部分代码,它不会在 React 中产生巨大差异,但 React 有一个漂亮的工作流程,可以将状态更改传递给它的子组件。这真的取决于你,但如果你正在使用 React,请在 React 中做所有 DOM 的事情。您尝试做的事情中有 70% 以上可能是 DOM 操纵。
我的总体建议是,不要想太多 "hard" 会怎样。想想你能多快学习基础知识。很容易掌握。