Es5和Es6的区别

1.系统库的引入

{

Es5:需要先使用require导入React包,成为对象,再去进行真正引用;

Es6:可以使用import方法来直接实现系统库引用,不需要额外制作一个类库对象

}

2. 导出及引用单个类

{

Es5:要导出一个类给别的模块用,一般通过module.exports来实现。引用时,则依然通过                          require方法来获取;

Es6:可以使用用export default来实现相同的功能,使用import方法来实现导入

注意:ES5和ES6的导入导出方法是成对出现的,不可以混用。

}

3.定义组件

{

Es5:组件类的定义通过React.createClass实现;

Es6:让组件类去继承React.Component类就可以了。

注意;ES5中React.createClass后面是需要小括号的,且结尾必须有分号

这里结尾时不会出现小括号,也不需要添加分号。

}

4.组件内部定义方法

{

Es5:采用的是 ###:function()的形式,方法大括号末尾需要添加逗号;

Es6:省略了【: function】这一段,并且结尾不需要加逗号来实现分隔。

注意:使用ES6定义的规则的话,外层必须用【class #### extend React.Component】的                  方式来申明这个类,否则会报错。

}

5.定义组件的属性类型和默认属性

{

Es5:属性类型和默认属性分别通过propTypes成员和getDefaultProps方法来实现(这两个方法应               该是固定名称的);

Es6:统一使用static成员来实现。

}

6.初始化STATE


{

Es5:初始化state的方法是固定的getInitialState;

Es6:第一种,直接构造state函数;第二种,相当于OC中的方法重写,重写constructor方法

}

推荐阅读 更多精彩内容