与 ES5 相比,React 的 ES6 语法有何不同?
1.require 与 import
|
1
2
3
4
5
|
// ES5var React = require('react'); // ES6import React from 'react'; |
2.export 与 exports
|
1
2
3
4
5
|
// ES5module.exports = Component; // ES6export default Component; |
3.component 和 function
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
// ES5var MyComponent = React.createClass({ render: function() { return <h3>Hello Edureka!</h3>; }}); // ES6class MyComponent extends React.Component { render() { return <h3>Hello Edureka!</h3>; }} |
4.props
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
// ES5var App = React.createClass({ propTypes: { name: React.PropTypes.string }, render: function() { return <h3>Hello, {this.props.name}!</h3>; }});// ES6class App extends React.Component { render() { return <h3>Hello, {this.props.name}!</h3>; }} |
5.state
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// ES5var App = React.createClass({ getInitialState: function() { return { name: 'world' }; }, render: function() { return <h3>Hello, {this.state.name}!</h3>; }});// ES6class App extends React.Component { constructor() { super(); this.state = { name: 'world' }; } render() { return <h3>Hello, {this.state.name}!</h3>; }} |
浙公网安备 33010602011771号