React學習筆記③

生命週期的理解this

class App extends Component{
  constructor(){//1
    console.log("constructor")
    //初始化屬於組件的屬性
    super();
    this.state = {
      num:1
    }
  }
  changehandler(e){
    this.state.num = e.target.value
    this.setState({
      num:e.target.value
    });
  }
  componentWillMount(){//2
    //不推薦在此處渲染數據,可能會阻塞
    console.log("componentWillMount")
  }
  componentDidMount(){//4
    console.log("componentDidMount")
  }
  shouldComponentUpdate(){//1 問該不應更新return true;則就是1
    console.log("shouldComponentUpdate")
  }
  componentWillUpdate(){//2 問shouldComponentUpdate該不應更新return true;則就是2(更新以前)
    console.log("componentWillUpdate")
  }
  componentDidUpdate(){//4問shouldComponentUpdate該不應更新return true;則就是4(更新以後)
    //數據改變的時候
    console.log("componentDidUpdate")
  }
  render(){//3 問shouldComponentUpdate該不應更新return true;則就是3
    return(
      <div>
        {this.state.num}
        <hr></hr>
        <input type='text' value={this.state.num} onChange={(e)=>{this.changehandler(e)}}></input>
      </div>
    )
  }
}
export default App;

第一種
constructor,
componentWillMount
render
componentDidMount
第二種(有數據更新時)
shouldComponentUpdate
componentWillUpdate
render
componentDidUpdate以上是經常使用的生命週期執行順序
相關文章
相關標籤/搜索