赵走x博客
网站访问量:151951
首页
书籍
软件
工具
古诗词
搜索
登录
49、Flux:理念、回顾Whinepad
48、lint、Flow、测试与复验:测试
47、lint、Flow、测试与复验:Flow
46、lint、Flow、测试与复验:ESLint
45、lint、Flow、测试与复验:package.json
44、构建实例应用:<Whinepad>
43、构建实例应用:应用配置
43、构建实例应用:<Excel>:改进的新版本
42、构建实例应用:组件:对话框
41、构建实例应用:组件:Actions
39、构建实例应用:表单:Form
38、构建实例应用:表单:<FormInput>“工厂组件”
37、构建实例应用:表单:Rating组件
36、构建实例应用:表单:Suggest
35、构建实例应用:Button组件
34、构建实例应用:组件
33、构建实例应用:Whinepad v.0.0.1
32、发布
31、开始构建
30、安装必备工具
29、为应用开发做准备:一个模板应用
28、JSX 和表单
27、JSX 和HTML 的区别
26、在JSX 中返回多个节点
25、展开属性
24、HTML 实体
23、JSX入门
22、Excel:一个出色的表格组件:下载表格数据
21、Excel:一个出色的表格组件:即时回放
20、Excel:一个出色的表格组件:搜索
19、Excel:一个出色的表格组件:编辑数据
18、Excel:一个出色的表格组件:排序
17、Excel:一个出色的表格组件
16、 PureRenderMixin
15、 性能优化:避免组件更新
14、 生命周期示例:使用子组件
13、组件生命周期示例:使用mixin
12、组件:生命周期方法
11、中途改变属性
10、从外部访问组件
9、在初始化state 时使用props:一种反模式
8、 props 与state
7、关于DOM 事件的说明
6、组件:带状态的文本框组件
5、组件的state
4、组件的propTypes
3、组件的属性
2、组件的基础
1、Hello World
50、Flux:Store
2、组件的基础
资源编号:76050
书籍
React快速上手开发
热度:83
现在你已经知道如何使用预定义的DOM 组件,是时候学习如何建立自己的组件了。
创建新组件的API 如下: ``` var MyComponent = React.createClass({ /* 组件详细说明 */ }) ``` 在上述例子中,“组件详细说明”是一个JavaScript 对象,该对象需要包含一个名为render() 的方法以及一系列可选的方法与属性。一个基本的例子大概如下所示: ``` var Component = React.createClass({ render: function() { return React.DOM.span(null, "I'm so custom"); } }); ``` 如你所见,唯一必须要做的事情就是实现render() 方法。该方法必须返回一个React 组件,不能只返回文本内容。这也是上述代码片段中使用span 组件的原因。 在应用中,使用自定义组件的方法和使用DOM 组件的方法类似: ``` ReactDOM.render( React.createElement(Component), document.getElementById("app") ); ``` 该自定义组件的渲染结果如图2-1 所示。  图2-1:你的第一个自定义组件 React.createElement() 是创建组件“实例”的方法之一。如果你想创建多个实例,还有另一种途径,就是使用工厂方法: ``` var ComponentFactory = React.createFactory(Component); ReactDOM.render( ComponentFactory(), document.getElementById("app") ); ``` 请注意,我们之前介绍的React.DOM.* 方法实际上只是在React.createElement() 的基础上进行了一层封装。换句话说,以下代码同样可以渲染DOM 组件: ``` ReactDOM.render( React.createElement("span", null, "Hello"), document.getElementById("app") ); ``` 如你所见,和自定义组件使用JavaScript 函数进行定义不同,DOM 元素是使用字符串定义的。