国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JS每日一題:react的生命周期有哪些?有什么需要注意的地方?

seanHai / 2556人閱讀

摘要:期的生命周期有哪些有什么需要注意的地方生命周期是什么這里不再累述了,有興趣可以點這里的生命周期這里我們以為準先上一張圖從圖中我們可以看出來生命周期分為三個部分裝載處理更新處理卸載處理英譯過來叫做裝備,裝配的意思,在這里我們理解為應用加載的過

20190304期

react的生命周期有哪些?有什么需要注意的地方?

生命周期是什么這里不再累述了,有興趣可以點這里

react的生命周期

這里我們以react v16.3為準

先上一張圖

從圖中我們可以看出來react生命周期分為三個部分

mounting 裝載處理

updation 更新處理

ummounting 卸載處理

Mounting

Mounting 英譯過來叫做裝備,裝配的意思,在react這里我們理解為應用加載的過程,react在這個階段做了哪些事情我們列舉一下

constructor 主要做些初始化操作,如初始化state、綁定成員的this環境

getDerivedStateFromPorps 渲染之前都會觸發

componentDidMount 渲染到頁面中后觸發,這時可以操作DOM

Updation

三種情況會觸發組件更新

props被改變

主動調用setState 狀態改變

forceUpdate 強制重新render

這三種情況在react中也會不同的處理,forceUpdate最直接,既然是強制的那么什么好說的,直接進入render函數, 當props發生改變時會進入 getDerivedStateFromPorps函數處理完后進入shouldComponentUpdate(劃重點,待會要考)更新完后進入componentDidUpdate函數

有同學應該注意到了, 上面劃了一個重點 shouldComponentUpdate, 這里我們解釋一下, 這個也是react中一個可優化的點

shouldComponentUpdate 音譯過來我們可以猜出來一點,這個函數是可以控制組件是否需要更新的

事實也正是如此

場景隨意列舉一個吧, 比如你有一個大列表,這時props里一個與其不相干的屬性發生變化,
進入了你的updation流程,如果你不處理那么你的頁面將會進行一次無意義的渲染,這不是我們想要看見的,如果你在shouldComponentUpdate中阻止了流程繼續往下走,你就減少了頁面的渲染次數,在react應用中用好shouldComponentUpdate這個是很重要的

Unmounting

react 為組件卸載也提供一個函數

componentWillUnmount 在組件卸載前觸發

另外還有一個圖上沒有提到的,卻很實用的一個hook

componentDidcatch 當組件發生錯誤觸發,使用場景很多對吧,調試,埋點上報都能用上

回顧老版本

在 16.3之前的生命周期可以大家更熟悉,這里就貼一下圖不做累述了

關于JS每日一題

JS每日一題可以看成是一個語音答題社區
每天利用碎片時間采用60秒內的語音形式來完成當天的考題
群主在次日0點推送當天的參考答案

注 絕不僅限于完成當天任務,更多是查漏補缺,學習群內其它同學優秀的答題思路

點擊加入答題

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/102409.html

相關文章

  • JS每日一題react中類組件和函數式組件中什么不同?

    摘要:期中類組件和函數式組件中有什么不同在中創建組件的形式有三種純函數式定義的無狀態組件定義的組件定義的組件今天我們要聊的是純函數式定義的無狀態組件及類組件的到底有什么不同分別在什么場景下適合使用首先我們來看一下用上述方法如何來創建一個組件定義的 20190306期 react中類組件和函數式組件中有什么不同? 在react中創建組件的形式有三種 純函數式定義的無狀態組件 React.cr...

    Java_oldboy 評論0 收藏0
  • JS每日一題:Vue-router哪些鉤子?使用場景?

    摘要:問有哪些鉤子使用場景的實現可以點這里前面我們用大白話講過什么是鉤子,這里在重復一下,就是在什么什么之前什么什么之后英文叫專業點叫生命周期,裝逼點可以叫守衛中也存在鉤子的概念分為三步記憶全局守衛路由獨享守衛組件獨享守衛全局守衛很好理解,全 20190218問 Vue-router有哪些鉤子?使用場景? router的實現可以點這里 前面我們用大白話講過什么是鉤子,這里在重復一下,就是在...

    張金寶 評論0 收藏0
  • JS每日一題:Webpack哪些常見Plugin?他們是解決什么問題

    摘要:期有哪些常見的他們是解決什么問題的定義音譯過來就是插件在中插件目的在于解決無法實現的其他事插件是一個具有屬性的對象。 20190327期 Webpack有哪些常見的Plugin?他們是解決什么問題的 定義: 音譯過來就是插件, 在webpack中, 插件目的在于解決 loader 無法實現的其他事 webpack 插件是一個具有 apply 屬性的 JavaScript 對象。appl...

    songze 評論0 收藏0
  • React 328道最全面試題(持續更新)

    摘要:希望大家在這浮夸的前端圈里,保持冷靜,堅持每天花分鐘來學習與思考。 今天的React題沒有太多的故事…… 半個月前出了248個Vue的知識點,受到很多朋友的關注,都強烈要求再出多些React相前的面試題,受到大家的邀請,我又找了20多個React的使用者,他們給出了328道React的面試題,由我整理好發給大家,同時發布在了前端面試每日3+1的React專題,希望對大家有所幫助,同時大...

    kumfo 評論0 收藏0
  • JS每日一題: Vue中mixin怎么理解?

    摘要:兩個對象鍵名沖突時,取組件對象的鍵值對也使用同樣的策略進行合并。代碼理解全局混合也可以全局注冊混合對象。注意使用一旦使用全局混合對象,將會影響到所有之后創建的實例為自定義的選項注入一個處理器。 20190122 Vue中mixin怎么理解? mixin是為了讓可復用的功能靈活的混入到當前組件中,混合的對象可以包含任意組件選項(生命周期,指令之類等等), mixin翻譯過來叫混合,高級的...

    jubincn 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<