一、require与import
// ES5var React = require('react'); // ES6import React from 'react';// ES5 var React = require('react'); // ES6 import React from 'react';
二、export与exports
// ES5module.exports = Component; // ES6export default Component;// ES5 module.exports = Component; // ES6 export default Component;
三、component与function
// ES5var MyComponent = React.createClass({ render: function() { return <h3>Hello Edureka!</h3>; }}); // ES6class MyComponent extends React.Component { render() { return <h3>Hello Edureka!</h3>; }}// ES5 var MyComponent = React.createClass({ render: function() { return <h3>Hello Edureka!</h3>; } }); // ES6 class MyComponent extends React.Component { render() { return <h3>Hello Edureka!</h3>; } }
四、props
// 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>; }}// 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
// 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>; }} // 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>; } }