react生命週期

2021-09-24 13:04:02 字數 1322 閱讀 1974

即當元件例項被建立並插入dom中時

static defaultprops

es6寫法:

constructor()

將父元件傳的props繫結到this上

super

([props]

)//預設執行,

//當建構函式中不使用props時,可以不傳props

給this.state賦值物件來初始化內部state

this

.state =

//生命週期寫法(和defaultprops差不多)

getinitialstate()

}

事件處理函式繫結例項

//如果事件處理函式為箭頭函式,則不需要該操作

constructor:

this

.changename =

this

.changename.

bind

(this

)

render:

static getderivedstatefromprops(nextprops,prevprops)(不常用 (將來17之後))

componentwillmount(過時)

render

render()方法必須是乙個純函式,他不應該改變state,也不能直接和瀏覽器進行互動,應該將事件放在其他生命週期函式中

如果shouldcomponentupdate()返回false,render()不會被呼叫。

componentdidmount(開始可以獲得dom接節點)componentwillreceiveprops(nextprops)(過時)使用getderivedstatefromprops代替

getderivedstatefromprops()會在更新時也執行一次(返回物件更新state,在初始化時也呼叫)

shouldcomponentupdate(是否需要進行更新)

這個鉤子函式react優化的關鍵

componentwillupdate(過時)

getsnapshotbeforeupdate()(將來,快照)

進行更新的render渲染

componentdidupdate(prestate,preprops,snapshot)componentwillunmount

元件銷毀

componentdidcatch(err,info) 錯誤邊界

getderivedstatefromerror(err)

React 生命週期 生命週期方法

生命週期 掛載 更新 解除安裝 元件被建立 執行初始化 並被掛載到dom中,完成元件的第一次渲染 constructor props getderivedstatefromprops props,state render componentdidmount 元件被建立時會首先呼叫元件的構造方法,接受...

react 生命週期

首次例項化 例項化完成後的更新 元件已存在時的狀態改變 生命週期共提供了10個不同的api。1.getdefaultprops 作用於元件類,只呼叫一次,返回物件用於設定預設的props,對於引用值,會在例項中共享。2.getinitialstate 作用於元件的例項,在例項建立時呼叫一次,用於初始...

react生命週期

盜圖一張 第一次進入頁面列印結果 1 parent constructor 2 parent conponentwillmount 3 parent render 4 initial render constructor 5 componentwillmount 6 render 7 compone...