react的ES5与ES6写法的不同(一)

最近在学习react的编程写法,原本一直在用ES5的老版写法,近期接触了ES6的写法,想同大家一起分享一下两者的不同之处:

一、引入方式的不同:

ES5的写法:var React = require("react");  

ES6的写法:import React, { Component, PropTypes } from 'react

二、组件的创建方式不同:

ES5的写法:var Dome = React.createClass( {      
} );  

ES6的写法:class Dome extends Component {    
}

三、例如:我们分别用React的两种写法进行输出Hello world!时,我们会使用如下的写法:

ES5的写法:var Dome = React.createClass( {  
        render:function() {
       
                                    return (
           
                                        <h1>Hello world!</h1>
     
                                      );
   
                              }
} );  

 ReactDOM.render(<Dome />,document.getElementById('dome'));

ES6的写法: class Dome extends Component {  
    render() {
       
        return (
           
      <h1>Hello world!</h1>
     
         );
   
        }

}

ReactDOM.render(<Dome />,document.getElementById('dome'));

四、this.props.children

ES5的写法:varDome = React.createClass({
  render: function() {
    return (
      <ul>
      {
        React.Children.map(this.props.children, function (child) {
          return <li>{child}</li>;
        })
      }
      </ul>
    );
  }
});

ES6的写法:class Dome extends React.Component {      
  render() {
    return (
      <ul>
        {
          React.Children.map(this.props.children, (child) => {

return <li>{child}</li>

})
         }
      </ul>
    )
  }
}

ReactDOM.render(
  <Dome>
    <span>home</span>

     <span>Favs</span>

                                                 <span>Stats</span>

  </Dome>,
  document.body
);

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangrui_web

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值