最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

React中關(guān)于render()的用法及說明

 更新時(shí)間:2023年02月12日 13:18:03   作者:Han_Zhou_Z  
這篇文章主要介紹了React中關(guān)于render()的用法及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

React中的render()

1、render()

是 class 組件中唯一必須實(shí)現(xiàn)的方法

2、當(dāng) render 被調(diào)用時(shí)

它會(huì)檢查 this.props 和 this.state 的變化并返回以下類型之一:

(1)React 元素。通常通過 JSX 創(chuàng)建。例如,<div /> 會(huì)被 React 渲染為 DOM 節(jié)點(diǎn),<MyComponent /> 會(huì)被 React 渲染為自定義組件,無論是 <div /> 還是 <MyComponent /> 均為 React 元素。

(2)數(shù)組或 fragments。 使得 render 方法可以返回多個(gè)元素。

(3)Portals??梢凿秩咀庸?jié)點(diǎn)到不同的 DOM 子樹中。

(4)字符串或數(shù)值類型。它們?cè)?DOM 中會(huì)被渲染為文本節(jié)點(diǎn)

(5)布爾類型或 null。什么都不渲染。(主要用于支持返回 test && <Child /> 的模式,其中 test 為布爾類型。)

3、render() 函數(shù)應(yīng)該為純函數(shù)

這意味著在不修改組件 state 的情況下,每次調(diào)用時(shí)都返回相同的結(jié)果,并且它不會(huì)直接與瀏覽器交互。

4、如需與瀏覽器進(jìn)行交互

請(qǐng)?jiān)?componentDidMount() 或其他生命周期方法中執(zhí)行你的操作。保持 render() 為純函數(shù),可以使組件更容易使用、維護(hù)。

5、在React.Component類

的子類中會(huì)重新定義(實(shí)現(xiàn))

6、在react中觸發(fā)render的有4條路徑

以下假設(shè)shouldComponentUpdate都是按照默認(rèn)返回true的方式。

(1)首次渲染Initial Render

(2)調(diào)用this.setState (并不是一次setState會(huì)觸發(fā)一次render,React可能會(huì)合并操作,再一次性進(jìn)行render)

(3)父組件發(fā)生更新(一般就是props發(fā)生改變,但是就算props沒有改變或者父子組件之間沒有數(shù)據(jù)交換也會(huì)觸發(fā)render)

(4)調(diào)用this.forceUpdate

7、生命周期流程圖(來源于官網(wǎng))

注意:如果在shouldComponentUpdate里面返回false可以提前退出更新路徑

React render在什么時(shí)候會(huì)被觸發(fā)?

在 React 中,只要執(zhí)行了 setState 方法,就一定會(huì)觸發(fā) render 函數(shù)執(zhí)行;

組件的 props 改變了,不一定觸發(fā) render 函數(shù)的執(zhí)行,除非 props 的值來自于父組件或者祖先組件的 state 

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • useEffect如何通過form.getFieldValue(‘xxx‘)監(jiān)聽Form表單變化

    useEffect如何通過form.getFieldValue(‘xxx‘)監(jiān)聽Form表單變化

    這篇文章主要介紹了useEffect如何通過form.getFieldValue(‘xxx‘)監(jiān)聽Form表單變化問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • useEffect支持async及await使用方式

    useEffect支持async及await使用方式

    這篇文章主要為大家介紹了useEffect支持async及await的使用方式示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • React Router V6更新內(nèi)容詳解

    React Router V6更新內(nèi)容詳解

    這篇文章主要為大家介紹了React Router V6更新內(nèi)容,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • ReactHook使用useState更新變量后,如何拿到變量更新后的值

    ReactHook使用useState更新變量后,如何拿到變量更新后的值

    這篇文章主要介紹了ReactHook使用useState更新變量后,如何拿到變量更新后的值問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • react 父子組件之間通訊props

    react 父子組件之間通訊props

    這篇文章主要介紹了react 父子組件之間通訊props,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-09-09
  • React使用context進(jìn)行跨級(jí)組件數(shù)據(jù)傳遞

    React使用context進(jìn)行跨級(jí)組件數(shù)據(jù)傳遞

    這篇文章給大家介紹了React使用context進(jìn)行跨級(jí)組件數(shù)據(jù)傳遞的方法步驟,文中通過代碼示例給大家介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)React context組件數(shù)據(jù)傳遞有一定的幫助,感興趣的小伙伴跟著小編一起來學(xué)習(xí)吧
    2024-01-01
  • React中state屬性和生命周期的使用

    React中state屬性和生命周期的使用

    這篇文章主要介紹了React中state屬性和生命周期的使用說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 路由react-router-dom的基本使用教程

    路由react-router-dom的基本使用教程

    在React中,路由是一套映射規(guī)則,是URL路徑與組件的對(duì)應(yīng)關(guān)系。使用React路由,就是配置路徑和組件的對(duì)應(yīng)關(guān)系,這篇文章主要介紹了路由react-router-dom的使用,需要的朋友可以參考下
    2023-02-02
  • React中Suspense及l(fā)azy()懶加載及代碼分割原理和使用方式

    React中Suspense及l(fā)azy()懶加載及代碼分割原理和使用方式

    這篇文章主要介紹了React中Suspense及l(fā)azy()懶加載及代碼分割原理和使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • React狀態(tài)管理的簡(jiǎn)明指南

    React狀態(tài)管理的簡(jiǎn)明指南

    Redux 是React最常用的集中狀態(tài)管理工具,本文主要介紹了React狀態(tài)管理的簡(jiǎn)明指南,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01

最新評(píng)論

东方市| 榆林市| 潜山县| 东辽县| 弥勒县| 乌兰县| 大安市| 全椒县| 自治县| 石楼县| 莱西市| 铅山县| 独山县| 弥勒县| 府谷县| 久治县| 察雅县| 华亭县| 思茅市| 安顺市| 垫江县| 宜良县| 忻城县| 贵溪市| 泉州市| 上虞市| 鄂尔多斯市| 敦化市| 嘉义县| 伽师县| 田东县| 莱阳市| 海林市| 博湖县| 巨野县| 容城县| 旺苍县| 铁力市| 洛扎县| 永济市| 札达县|