当今 React
比较流行,可能会有很多的新手和我一样遇到这个问题:
var MyClass = React.createClass({...});
和class MyClass extends React.Component{...}
之间的区别是什么?那么今天带大家一起学习一下。
写法的区别
React
中有两种支持创建组件的方法,你可以通过 React.createClass
和 extends React.Component
,他们实现的目的都是一样的。区别就在于你是否是以 ES6
的形式。
当你使用
ES6
,你应该在constructor
中初始化你的参数:
1 | class MyComponent extends React.Component { |
当你使用
React.createClass
你需要使用getInitialState
:
1 | var MyComponent = React.createClass({ |
- 这两种写法的方法名首字母都必须大写