我看到两者交替使用。
两者的主要用例是什么?有优缺点吗?是一个更好的做法吗?
这两种方法是不可互换的。在使用ES6类时,应该在构造函数中初始化状态,并在使用React.createClass时定义getInitialState方法。
See the official React doc on the subject of ES6 classes。
- class MyComponent extends React.Component {
- constructor(props) {
- super(props);
- this.state = { /* initial state */ };
- }
- }
相当于
- var MyComponent = React.createClass({
- getInitialState() {
- return { /* initial state */ };
- },});