以下是在比较 ES6 和 ES5 时可以看到的最明显的语法:
require vs import
在 ES5 中的语法:
var React = require('react');
在 ES6 中的语法:
import React from 'react';
export vs exports
在 ES5 中的语法:
module.exports = Component;
在 ES6 中的语法:
export default Component;
组件和函数
在 ES5 中的语法:
var MyComponent = React.createClass({
render: function() {
return
<h3>Hello JavaTpoint!</h3>
;
}
});
在 ES6 中的语法:
class MyComponent extends React.Component {
render() {
return
<h3>Hello JavaTpoint!</h3>
;
}
}
props
在 ES5 中的语法:
var App = React.createClass({
propTypes: { name: React.PropTypes.string },
render: function() {
return
<h3>Hello, {this.props.name}!</h3>
;
}
});
在 ES6 中的语法:
class App extends React.Component {
render() {
return
<h3>Hello, {this.props.name}!</h3>
;
}
}
state
在 ES5 中的语法:
var App = React.createClass({
getInitialState: function() {
return { name: 'world' };
},
render: function() {
return
<h3>Hello, {this.state.name}!</h3>
;
}
});
在 ES6 中的语法:
class App extends React.Component {
constructor() {
super();
this.state = { name: 'world' };
}
render() {
return
<h3>Hello, {this.state.name}!</h3>
;
}
}