国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

React生命周期(新-舊)

這篇具有很好參考價(jià)值的文章主要介紹了React生命周期(新-舊)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言

1、生命周期介紹

① 是什么?

組件從創(chuàng)建到掛載頁(yè)面上運(yùn)行,再到組件不用時(shí)卸載的過程,叫生命周期,只有類組件才有生命周期

②作用

學(xué)習(xí)組件的生命周期,有助于理解組件的運(yùn)行方式,完成更復(fù)雜的組件更能、分析組件錯(cuò)誤原因等。

2、鉤子函數(shù)介紹

① 是什么?

生命周期的每個(gè)階段總是伴隨著一些方法調(diào)用,這些方法就是生命周期的鉤子函數(shù)。

②作用

為開發(fā)人員在不同階段操作組件提供了時(shí)機(jī)。

生命周期的三個(gè)階段

三階段分為:創(chuàng)建時(shí)、更新時(shí)和卸載時(shí)。
??點(diǎn)擊此(生命周期結(jié)構(gòu)圖)

一、生命周期(舊)

React生命周期(新-舊),前端,#  React,react.js,javascript,前端,搜索引擎

1.初始化階段(掛載階段)

① constructor

Ⅰ、執(zhí)行

組件實(shí)例被創(chuàng)建并初始化時(shí)觸發(fā)

Ⅱ、能做什么

  • 通過給 this.state 賦值對(duì)象來初始化內(nèi)部 state。
  • 為事件處理函數(shù)綁定實(shí)例
② componentWillMount

Ⅰ、執(zhí)行

componentWillMount() 在掛載之前被調(diào)用。

Ⅱ、能做什么

用于準(zhǔn)備渲染前的工作

③ render

Ⅰ、執(zhí)行

根據(jù)組件的props和state

Ⅱ、能做什么

渲染UI,返回需要渲染的元素結(jié)構(gòu)

④ componentDidMount

Ⅰ、執(zhí)行

componentDidMount() 會(huì)在組件掛載后(插入 DOM 樹中)立即調(diào)用。依賴于 DOM 節(jié)點(diǎn)的初始化應(yīng)該放在這里

Ⅱ、能做什么

這個(gè)方法是比較適合添加訂閱的地方。如果添加了訂閱,請(qǐng)不要忘記在 componentWillUnmount() 里取消訂閱

2.更新階段

① shouldComponentUpdate

Ⅰ、執(zhí)行

當(dāng) props 或 state 發(fā)生變化時(shí),shouldComponentUpdate() 會(huì)在渲染執(zhí)行之前被調(diào)用。

Ⅱ、能做什么

根據(jù)shouldComponentUpdate的返回值,判斷組件的輸出是否受但錢state或peops更改影響。默認(rèn)行為是state每次發(fā)生變化組件都會(huì)重新渲染。大部分情況下,應(yīng)該遵循默認(rèn)行為。

② componentWillUpdate

Ⅰ、執(zhí)行

組件即將被重新渲染前觸發(fā)

Ⅱ、能做什么

用于準(zhǔn)備更新前的工作

③ render

Ⅰ、執(zhí)行

根據(jù)組件的props和state

Ⅱ、能做什么

渲染UI,返回需要渲染的元素結(jié)構(gòu)

④ componentDidUpdate

Ⅰ、執(zhí)行

componentDidUpdate() 會(huì)在更新后會(huì)被立即調(diào)用。首次渲染不會(huì)執(zhí)行此方法。

Ⅱ、能做什么

當(dāng)組件更新后,可以在此處對(duì) DOM 進(jìn)行操作。如果你對(duì)更新前后的 props 進(jìn)行了比較,也可以選擇在此處進(jìn)行網(wǎng)絡(luò)請(qǐng)求。

3.卸載階段

① componentWillUnmount

Ⅰ、執(zhí)行

componentWillUnmount() 會(huì)在組件卸載及銷毀之前直接調(diào)用。

Ⅱ、能做什么

在此方法中執(zhí)行必要的清理操作,例如,清除 timer,取消網(wǎng)絡(luò)請(qǐng)求或清除在 componentDidMount() 中創(chuàng)建的訂閱等。

React生命周期(新-舊),前端,#  React,react.js,javascript,前端,搜索引擎

二、生命周期(新)

React生命周期(新-舊),前端,#  React,react.js,javascript,前端,搜索引擎

1.初始化階段(掛載階段)

① constructor

Ⅰ、執(zhí)行

組件實(shí)例被創(chuàng)建并初始化時(shí)觸發(fā)

Ⅱ、能做什么

  • 通過給 this.state 賦值對(duì)象來初始化內(nèi)部 state。
  • 為事件處理函數(shù)綁定實(shí)例
② getDerivedStateFromProps

Ⅰ、執(zhí)行

getDerivedStateFromProps 會(huì)在調(diào)用 render 方法之前調(diào)用,并且在初始掛載及后續(xù)更新時(shí)都會(huì)被調(diào)用。

Ⅱ、能做什么

它應(yīng)返回一個(gè)對(duì)象來更新 state,如果返回 null 則不更新任何內(nèi)容。

③ render

Ⅰ、執(zhí)行

根據(jù)組件的props和state

Ⅱ、能做什么

渲染UI,返回需要渲染的元素結(jié)構(gòu)

④ componentDidMount

Ⅰ、執(zhí)行

componentDidMount() 會(huì)在組件掛載后(插入 DOM 樹中)立即調(diào)用。依賴于 DOM 節(jié)點(diǎn)的初始化應(yīng)該放在這里

Ⅱ、能做什么

這個(gè)方法是比較適合添加訂閱的地方。如果添加了訂閱,請(qǐng)不要忘記在 componentWillUnmount() 里取消訂閱

2.更新階段

① getDerivedStateFromProps

Ⅰ、執(zhí)行

getDerivedStateFromProps 會(huì)在調(diào)用 render 方法之前調(diào)用,并且在初始掛載及后續(xù)更新時(shí)都會(huì)被調(diào)用。

Ⅱ、能做什么

它應(yīng)返回一個(gè)對(duì)象來更新 state,如果返回 null 則不更新任何內(nèi)容。

② shouldComponentUpdate

Ⅰ、執(zhí)行

當(dāng) props 或 state 發(fā)生變化時(shí),shouldComponentUpdate() 會(huì)在渲染執(zhí)行之前被調(diào)用。

Ⅱ、能做什么

根據(jù)shouldComponentUpdate的返回值,判斷組件的輸出是否受但錢state或peops更改影響。默認(rèn)行為是state每次發(fā)生變化組件都會(huì)重新渲染。大部分情況下,應(yīng)該遵循默認(rèn)行為。

③ render

Ⅰ、執(zhí)行

根據(jù)組件的props和state

Ⅱ、能做什么

渲染UI,返回需要渲染的元素結(jié)構(gòu)

④ getSnapshotBeforeUpdate

Ⅰ、執(zhí)行

getSnapshotBeforeUpdate() 在最近一次渲染輸出(提交到 DOM 節(jié)點(diǎn))之前調(diào)用。

Ⅱ、能做什么

它使得組件能在發(fā)生更改之前從 DOM 中捕獲一些信息(例如,滾動(dòng)位置)。此生命周期方法的任何返回值將作為參數(shù)傳遞給 componentDidUpdate()。

⑤ componentDidUpdate

Ⅰ、執(zhí)行

componentDidUpdate() 會(huì)在更新后會(huì)被立即調(diào)用。首次渲染不會(huì)執(zhí)行此方法。

Ⅱ、能做什么

當(dāng)組件更新后,可以在此處對(duì) DOM 進(jìn)行操作。如果你對(duì)更新前后的 props 進(jìn)行了比較,也可以選擇在此處進(jìn)行網(wǎng)絡(luò)請(qǐng)求。

3.卸載階段

① componentWillUnmount

Ⅰ、執(zhí)行

componentWillUnmount() 會(huì)在組件卸載及銷毀之前直接調(diào)用。

Ⅱ、能做什么

在此方法中執(zhí)行必要的清理操作,例如,清除 timer,取消網(wǎng)絡(luò)請(qǐng)求或清除在 componentDidMount() 中創(chuàng)建的訂閱等。

React生命周期(新-舊),前端,#  React,react.js,javascript,前端,搜索引擎

三、生命周期新舊整體圖片

React生命周期(新-舊),前端,#  React,react.js,javascript,前端,搜索引擎

四、三個(gè)被遺棄的生命周期函數(shù)

以下生命周期方法標(biāo)記為“過時(shí)”。這些方法任然有效,但不建議在新代碼中使用它們。使用這被遺棄的生命周期需要在前面加上UNSAFE_,但是不加也沒事(建議加上)。

1、UNSAFE_componentWillMount()

Ⅰ、執(zhí)行

UNSAFE_componentWillMount() 是 React 組件生命周期中的一個(gè)方法,用于在組件掛載(即被渲染到 DOM 中)之前調(diào)用。

Ⅱ、能做什么

在組件更新之前執(zhí)行一些操作。它接收兩個(gè)參數(shù):nextProps和nextState,分別表示組件即將更新的props和state。

2、UNSAFE_componentWillReceiveProps()

Ⅰ、執(zhí)行

用于在組件接收新的props時(shí)觸發(fā)。

Ⅱ、能做什么

允許組件根據(jù)即將接收到的新props進(jìn)行一些操作,例如更新組件的狀態(tài)或執(zhí)行一些副作用操作。在這個(gè)方法中,可以比較當(dāng)前props和即將接收到的props的差異,并根據(jù)需要進(jìn)行相應(yīng)的處理。

3、UNSAFE_componentWillMount()

Ⅰ、執(zhí)行

當(dāng)組件的props或state發(fā)生變化,并且在重新渲染之前,UNSAFE_componentWillUpdate()方法會(huì)被調(diào)用。

Ⅱ、能做什么

UNSAFE_componentWillUpdate()的作用是在組件更新之前執(zhí)行一些操作。它接收兩個(gè)參數(shù):nextProps和nextState,分別表示組件即將更新的props和state。

五、新增的兩個(gè)生命周期函數(shù)

1、getDerivedStateFromProps

執(zhí)行:

static getDerivedStateFromProps(props, state)
在組件創(chuàng)建時(shí)和更新時(shí)的render方法之前調(diào)用。

作用:

它應(yīng)該返回一個(gè)對(duì)象來更新狀態(tài),或者返回null來不更新任何內(nèi)容。

2、getSnapshotBeforeUpdate

執(zhí)行:

getSnapshotBeforeUpdate()
被調(diào)用于render之后,可以讀取但無法使用DOM的時(shí)候。

作用:

它使您的組件可以在可能更改之前從DOM捕獲一些信息(例如滾動(dòng)位置)。此生命周期返回的任何值都將作為參數(shù)傳遞給componentDidUpdate()。文章來源地址http://www.zghlxwxcb.cn/news/detail-680687.html

到了這里,關(guān)于React生命周期(新-舊)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【react】react生命周期鉤子函數(shù):

    【react】react生命周期鉤子函數(shù):

    一、生命周期概念: 生命周期:簡(jiǎn)單來說就是一個(gè)事物從出生到消亡的過程就是生命周期,在React中的生命周期,就是組件從創(chuàng)建、掛載到頁(yè)面再到卸載組件的過程。 意義:生命周期有助于理解組件運(yùn)行方式、完成復(fù)雜組件功能、分析組件中間問題產(chǎn)生的原因等。 生命周期鉤子函數(shù)

    2024年02月14日
    瀏覽(26)
  • 面試題-React(六):React組件和生命周期

    面試題-React(六):React組件和生命周期

    一、React組件 React組件簡(jiǎn)介: React組件是構(gòu)建用戶界面的基本單元。它們將界面拆分成獨(dú)立、可重用的部分,使得代碼更加模塊化、可維護(hù)性更高。React組件可以是函數(shù)組件或類組件,它們接收輸入的數(shù)據(jù)(稱為props)并返回表示用戶界面的React元素。 創(chuàng)建React組件: 在React中

    2024年02月11日
    瀏覽(24)
  • 【react從入門到精通】深入理解React生命周期

    【react從入門到精通】深入理解React生命周期

    ?創(chuàng)作者:全棧弄潮兒 ?? 個(gè)人主頁(yè): 全棧弄潮兒的個(gè)人主頁(yè) ??? 個(gè)人社區(qū),歡迎你的加入:全棧弄潮兒的個(gè)人社區(qū) ?? 專欄地址:react從入門到精通 【分享幾個(gè)國(guó)內(nèi)免費(fèi)可用的ChatGPT鏡像】 【10幾個(gè)類ChatGPT國(guó)內(nèi)AI大模型】 【用《文心一言》1分鐘寫一篇博客簡(jiǎn)直yyds】 【用

    2024年02月03日
    瀏覽(25)
  • react 生命周期講解

    當(dāng)涉及到React組件的創(chuàng)建、更新和銷毀過程時(shí),React的生命周期方法起到了至關(guān)重要的作用。正確地理解和使用這些生命周期方法可以幫助我們?cè)诓煌碾A段執(zhí)行特定的操作,從而實(shí)現(xiàn)更好的組件控制和優(yōu)化。 1. 掛載階段(Mounting) 在組件被創(chuàng)建并添加到DOM中時(shí),以下生命周

    2024年02月07日
    瀏覽(66)
  • React生命周期(新-舊)

    React生命周期(新-舊)

    ① 是什么? 組件 從創(chuàng)建 到掛載頁(yè)面上運(yùn)行,再到組件不用時(shí) 卸載 的過程,叫生命周期,只有 類組件才有生命周期 。 ②作用 學(xué)習(xí)組件的生命周期,有助于理解組件的運(yùn)行方式,完成更復(fù)雜的組件更能、分析組件錯(cuò)誤原因等。 ① 是什么? 生命周期的每個(gè)階段總是伴隨著一

    2024年02月11日
    瀏覽(27)
  • 淺談React生命周期

    在React中,組件的生命周期是指組件從創(chuàng)建到銷毀的整個(gè)過程中所經(jīng)歷的一系列階段。React 16.3版本之前,組件的生命周期可以分為三個(gè)階段:掛載階段(Mounting)、更新階段(Updating)和卸載階段(Unmounting)。但是自React 16.3版本起,官方推出了新的生命周期方法,將原有的一

    2024年02月10日
    瀏覽(19)
  • React 生命周期新舊對(duì)比

    React 生命周期新舊對(duì)比

    React16.4版本之后使用了新的生命周期,它使用了一些新的生命周期鉤子(getDerivedStateFromProps、getSnapshotBeforeUpdate),并且即將廢棄老版的3個(gè)生命周期鉤子(componentWillMount、componentWillReceiveProps、componentWillUpdate)。 因?yàn)镽eact 16引入了 Fiber機(jī)制 ,把 同步 的渲染流程進(jìn)化為了 異步

    2024年02月11日
    瀏覽(22)
  • React 組件生命周期

    React 組件生命周期

    Mounting(掛載):已插入真實(shí) DOM Updating(更新):正在被重新渲染 Unmounting(卸載):已移出真實(shí) DOM Mounting階段叫掛載階段,伴隨整個(gè)虛擬DOM的聲明。它里面有四個(gè)小的生命周期函數(shù),分別是: constructor:初始化屬性 componentWillMount:在組件即將被掛載到頁(yè)面的時(shí)候執(zhí)行 render:頁(yè)面s

    2024年02月10日
    瀏覽(48)
  • react 生命周期方法

    react 生命周期方法

    每個(gè)組件都包含 “生命周期方法”,你可以重寫這些方法,以便于在運(yùn)行過程中特定的階段執(zhí)行這些方法。你可以使用此生命周期圖譜作為速查表。在下述列表中,常用的生命周期方法會(huì)被加粗。其余生命周期函數(shù)的使用則相對(duì)罕見。 掛載 當(dāng)組件實(shí)例被創(chuàng)建并插入 DOM 中時(shí)

    2024年02月13日
    瀏覽(25)
  • react---生命周期

    react---生命周期

    目錄 1.新舊生命周期對(duì)比 2.常用的3個(gè)鉤子函數(shù) 3.生命周期(舊) 4.生命周期(新) React 中為我們提供了一些生命周期鉤子函數(shù),讓我們能在 React 執(zhí)行的重要階段,在鉤子函數(shù)中做一些事情。 1.新舊生命周期對(duì)比 新的生命周期 對(duì)于 舊的生命周期 ,廢棄(即將廢棄)了 三個(gè)

    2024年02月08日
    瀏覽(17)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包