首先,props与state是React组件的两种方法。

  1. props,可以在组件中来获取this.props的属性。

var Helloreact=React.createClass({
    render:function(){
        return 

Hello {this.props.name}

        } }); ReactDOM.render(     ,         document.getElementById('example2') );      //Hello BOOM

2.state,获取的是更新后的数据,是通过用户的状态来更改state。

var Helloreact=React.createClass({
    getInitialState : function(){
        return {name:'BOOM'};
        },
    render:function(){
        return 

Hello {this.state.name}

        } }); ReactDOM.render(     ,         document.getElementById('example2') );    //Hello BOOM

3.在这里,可以通过props获取组件的属性,然后用state动态的更新。

 var HelloMe = React.createClass({
                getDefaultProps:function(){
                    return{
                        value:'props'
                    };
                },
                getInitialState : function(){
                    return {value:'state'};
                },
                handleChange:function(event){
                    this.setState({value:event.target.value});
                },
                clickhandle:function(event){
                    this.setState({value:" "});
                },
                render:function(){
                    var value= this.state.value;
                    return  
                                                         

Hi {this.props.value} {value}

                            清除{value}                             
;                 }             });             ReactDOM.render(                 
,                 document.getElementById('example1')             );

所以言之,相对于静态的状态下使用props会更好一些,动态的数据就需要使用state,

而React中,是虚拟的DOM树,是遍历全局后对数据进行对比,然后运算使用最快的方法进行的渲染。