91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

react生命周期總結

發布時間:2020-06-22 05:10:13 來源:網絡 閱讀:501 作者:兔兔捐 欄目:開發技術

    當通過createClass創建了組件之后,該React組件就有了生命周期。通常一個React組件的生命周期可分為三個階段:


    • Mounting:掛載組件,也就是組件實例化

    • ReciveProps:存在期,在這個時期組件的propsstate會變化,重新渲染組件

    • Unmounting:卸載組件,也就是組件被銷毀

    React在生命周期中提供了10種API:

    1.getDefaultProps():作用于組件類,只調用一次,返回對象用于設置默認的props,對于引用值,會在實例中共享。

    2.getInitialState():作用于組件的實例,在實例創建時調用一次,用于初始化每個實例的state。

    3.componentWillMount():在完成首次渲染之前調用,此時仍可以修改組件的tate。

    4.render():必選的方法,創建虛擬DOM,該方法具有特殊的規則:


    • 只能通過this.propsthis.state訪問數據

    • 可以返回nullfalse或任何React組件

    • 只能出現一個頂級組件(不能返回數組)

    • 不能改變組件的狀態

    • 不能修改DOM的輸出

    5.componentDidMount():真實的DOM被渲染出來后調用,在該方法中可通過     this.getDOMNode()訪問到真實的DOM元素。此時已可以使用其他類庫來操作這個    DOM。

    注意:在服務端中,該方法不會被調用。

    6.componentWillReceiveProps(nextProps,nextState):組件接收到新的props時調用,并將其作為參數nextProps使用,此時可以更改組件propsstate

    7.shouldComponentUpdate(nextProps,nextState):組件是否應當渲染新的propsstate,返回false表示跳過后續的生命周期方法,通常不需要使用以避免出現bug。在出現應用的瓶頸時,可通過該方法進行適當的優化。

    注意:在首次渲染期間或者調用了forceUpdate方法后,該方法不會被調用。

    8.componentWillUpdate(nextProps,nextState):接收到新的props或者state后,進行渲染之前調用,此時不允許更新propsstate

    9.componentDidUpdate(prevProps,prevState):完成渲染新的props或者state后調用,此時可以訪問到新的DOM元素。

    10.componentWillUnmount():組件被移除之前被調用,可以用于做一些清理工作,在componentDidMount方法中添加的所有任務都需要在該方法中撤銷,比如創建的定時器或添加的事件監聽器。

總結:下圖描述了生命周期的執行順序。

react生命周期總結

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

游戏| 胶南市| 慈溪市| 沂南县| 罗定市| 丰都县| 定陶县| 宣恩县| 文安县| 三原县| 新郑市| 乡宁县| 黑水县| 任丘市| 营山县| 松原市| 大方县| 德令哈市| 张家港市| 天水市| 乐陵市| 梁山县| 乌恰县| 房产| 南阳市| 丰都县| 镇雄县| 西吉县| 宁晋县| 商水县| 海林市| 敖汉旗| 体育| 乐都县| 上林县| 望江县| 古交市| 阳江市| 嘉兴市| 香格里拉县| 道真|