React
A JavaScript library for building user interfaces

Just the UI

很多人将React作为MVC中的V(视图)来使用. React不会对你的技术栈做任何假设, 所以React很容易作为一个很小的特性使用在一个已有的项目中.

Virtual DOM

React 让你以抽象的方式使用DOM,给你提供了一个简单的编程模式和更好的展示方式,React也提供了通过Node在服务器端渲染, 你也可以使用React Native开发Native AppsReact Native.

Data flow

React实现了单向数据流降低了样板,所以React比传统的方式更容易做数据绑定.


A Simple Component

React组件实现了render() 方法提供输入的数据并返回你要展示的信息, 这个例子使用一种叫做JSX的类XML语法.传递到该组件的数据,在render()方法中, 可以通过this.props来访问.

在使用React的时候,JSX并不是强制要求的,你可以选择性的使用 点击 "Compiled JS" 可以看到被JSX编译器编译后的代码.

A Stateful Component

除了输入数据以外(通过this.props访问), 组件也可以保存内部状态数据(通过this.state访问). 当组件状态数据改变的时候, 将通过render()方法来重新渲染组件.

An Application

使用props and state, 我们可以创建一个小的ToDo应用程序. 这个例子使用state来跟踪当前的列表的所有项和用户输入的数据,尽管事件处理看起来呈现内联, 它们实际上是通过事件委托来实现的.

A Component Using External Plugins

React非常的灵活,React提供了钩子,允许你和其他的库或者框架一起使用,这个例子使用marked, 一个外部的Markdown库, 将文本区的值进行实时转换.