page contents

与 ES5 相比,React 的 ES6 语法有何不同?

轩辕小不懂 发布于 2022-07-15 14:23
阅读 473
收藏 0
分类:WEB前端开发
3941
Nen
Nen
- 程序员

以下语法是 ES5 与 ES6 中的区别:

  1. require 与 import

1// ES5
2var React = require('react');
3
4// ES6
5import React from 'react';
  1. export 与 exports

1// ES5
2module.exports = Component;
3
4// ES6
5export default Component;
  1. component 和 function

 1// ES5
2var MyComponent = React.createClass({
3    render: function() {
4        return
5            <h3>Hello Edureka!</h3>;
6    }
7});
8
9// ES6
10class MyComponent extends React.Component {
11    render() {
12        return
13            <h3>Hello Edureka!</h3>;
14    }
15}
  1. props

 1// ES5
2var App = React.createClass({
3    propTypes: { name: React.PropTypes.string },
4    render: function() {
5        return
6            <h3>Hello, {this.props.name}!</h3>;
7    }
8});
9
10// ES6
11class App extends React.Component {
12    render() {
13        return
14            <h3>Hello, {this.props.name}!</h3>;
15    }
16}
  1. state

 1// ES5
2var App = React.createClass({
3    getInitialState: function() {
4        return { name: 'world' };
5    },
6    render: function() {
7        return
8            <h3>Hello, {this.state.name}!</h3>;
9    }
10});
11
12// ES6
13class App extends React.Component {
14    constructor() {
15        super();
16        this.state = { name: 'world' };
17    }
18    render() {
19        return
20            <h3>Hello, {this.state.name}!</h3>;
21    }
22}
请先 登录 后评论