1.virtual DOM
傳統頁面開發模式中,都是對真實的dom進行操作,耗費大量的性能。而react将真實dom樹轉換成虛拟dom,每一次更新都與原來的虛拟dom進行diff比對來進行更新,對于改變的部分來進行批量更新,節約了性能。
通過虛拟dom轉換成真實dom,友善和其他平台的內建,react元件可以映射為對應的原生控件,可以用于web,ios,android
2.setState
setState 是一個異步方法,一個生命周期内所有的 setState 方法會合并操作
但是并不推薦在推薦内部使用過多的state,過多的state容易導緻邏輯混亂
3.props
react中資料是單向流動的 父子元件之間的通信通過父元件傳遞資料給子元件,子元件通過props接受,子元件通過向父元件傳遞過來的函數傳入自己的參數來進行調用父元件中的方法
4.react生命周期
可以将元件的生命周期分成兩大類:元件的挂載解除安裝階段&&元件的更新階段
元件挂載階段執行的生命周期函數:
componentWillMount,render, componentDidMount
元件解除安裝階段執行的生命周期函數:
componentWillUnmount(可以執行一些事件回收或是清除定時器)
元件更新階段執行的生命周期函數:
元件自身的 state 更新了,那麼會依次執行 shouldComponentUpdate、componentWillUpdate 、render 和 componentDidUpdate。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsISPrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdsATOfd3bkFGazxCMx8VesATMfhHLlN3XnxCMwEzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5yNjNTOhBjM1EmYwMmNlZzNlFmY1AjZkljYllDZhJzYk9CXwIzLclDMxIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLzM3Lc9CX6MHc0RHaiojIsJye.png)