摘要:我希望在深入之前知道這些是的一名前端工程師,正在使用構(gòu)建公司內(nèi)部項目。對狀態(tài)的改變是異步的調(diào)用后,組件的并不會立即改變。使用官方推出的讓開發(fā)者已零配置的方式快速創(chuàng)建應(yīng)用。閱讀原文討論地址我希望在深入之前知道這些如果你想?yún)⑴c討論,請點擊這里
我希望在深入 React 之前知道這些
Canberk Morelli 是 OpsGenie 的一名前端工程師,正在使用 React 構(gòu)建公司內(nèi)部項目。通過這篇文章可以使初學(xué)者不要犯同樣的錯誤。
1、每次調(diào)用 setState 都會引起組件的重新渲染 re-render每次state 改變或者傳入新的 props 都會調(diào)用 shouldComponentUpdate。
shouldComponentUpdate 默認(rèn)返回 true,開發(fā)者可以根據(jù)自己的邏輯決定是否返回 false。
注意:
不正確的 shouldComponentUpdate 邏輯可能引發(fā)錯誤:應(yīng)該渲染的時候沒有渲染,或者不應(yīng)該渲染的時候卻渲染了
在 shouldComponentUpdate 進(jìn)行復(fù)雜的判斷容易引發(fā)性能問題,可以通過 React’s Performance Tools 來查找。
2、setState 對狀態(tài)的改變是異步的調(diào)用 setState 后,組件的 state 并不會立即改變。
一個經(jīng)常犯的錯誤就是在 setState 后馬上使用 this.state。
setState 還有另一種用法:setState(updater, [callback]),通過傳遞一個函數(shù) updater。
第 2 個參數(shù)是修改完狀態(tài)后的回調(diào),但是不推薦在這里寫業(yè)務(wù)邏輯,一個比較不錯的地方是寫到 componentDidUpdate 函數(shù)里。
生命周期大概分為 3 類:
掛載:組件被創(chuàng)建并插入到 DOM
更新:組件正在重新渲染,一般是由 props 或 state 的改變引起的
卸載:組件從 DOM 上移除
4、componentWillReceiveProps 的使用當(dāng)組件的 props 改變時需要更新 state時使用這個方法。
注意:
即使 props 沒有改變,也會調(diào)用 componentWillReceiveProps,因此需要在函數(shù)內(nèi)部比較 this.props 和 nextProps
在一個已掛載組件接收新 props 前,componentWillReceiveProps 被調(diào)用,因此在掛載階段是不會調(diào)用 componentWillReceiveProps 的
5、使用 React Developer ToolsReact Developer Tools 可以更方便的調(diào)試 React 應(yīng)用。
6、使用 Create React App官方推出的 Create React App 讓開發(fā)者已零配置的方式快速創(chuàng)建 React 應(yīng)用。
閱讀原文:I wish I knew these before diving into React
討論地址:我希望在深入 React 之前知道這些
如果你想?yún)⑴c討論,請點擊這里
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/89415.html
摘要:忍者級別的函數(shù)操作對于什么是匿名函數(shù),這里就不做過多介紹了。我們需要知道的是,對于而言,匿名函數(shù)是一個很重要且具有邏輯性的特性。通常,匿名函數(shù)的使用情況是創(chuàng)建一個供以后使用的函數(shù)。 JS 中的遞歸 遞歸, 遞歸基礎(chǔ), 斐波那契數(shù)列, 使用遞歸方式深拷貝, 自定義事件添加 這一次,徹底弄懂 JavaScript 執(zhí)行機(jī)制 本文的目的就是要保證你徹底弄懂javascript的執(zhí)行機(jī)制,如果...
摘要:面經(jīng)因為我完全沒有面試經(jīng)驗,從來沒有經(jīng)歷過面試,于是想著在去這類大公司面試之前先找成都的小公司練練手,積累點面試經(jīng)驗。于是三月份開始就有成都的小公司開始約我面試。 前序 從我高考成績出來那一刻開始,從我在高考志愿上填上計算機(jī)科學(xué)與技術(shù)這幾個當(dāng)時在心中堪稱神圣的幾個字開始,我就已經(jīng)把進(jìn)入中國互聯(lián)網(wǎng)最高殿堂BAT作為我整個大學(xué)奮斗的目標(biāo),哪怕我就讀的是一所位于內(nèi)陸的雙非一本大學(xué)我也認(rèn)為我能...
摘要:原文地址一個非常適合入門學(xué)習(xí)的博客項目前端掘金一個非常適合入門學(xué)習(xí)的項目,代碼清晰結(jié)構(gòu)合理新聞前端掘金介紹一個由編寫的新聞。深入淺出讀書筆記知乎專欄前端專欄前端掘金去年的一篇老文章,恰好今天專欄開通,遷移過來。 破解前端面試(80% 應(yīng)聘者不及格系列):從閉包說起 - 掘金修訂說明:發(fā)布《80% 應(yīng)聘者都不及格的 JS 面試題》之后,全網(wǎng)閱讀量超過 6W,在知乎、掘金、cnodejs ...
摘要:原文地址一個非常適合入門學(xué)習(xí)的博客項目前端掘金一個非常適合入門學(xué)習(xí)的項目,代碼清晰結(jié)構(gòu)合理新聞前端掘金介紹一個由編寫的新聞。深入淺出讀書筆記知乎專欄前端專欄前端掘金去年的一篇老文章,恰好今天專欄開通,遷移過來。 破解前端面試(80% 應(yīng)聘者不及格系列):從閉包說起 - 掘金修訂說明:發(fā)布《80% 應(yīng)聘者都不及格的 JS 面試題》之后,全網(wǎng)閱讀量超過 6W,在知乎、掘金、cnodejs ...
閱讀 1703·2021-09-26 09:55
閱讀 1446·2021-09-23 11:22
閱讀 2813·2021-09-06 15:02
閱讀 2713·2021-09-01 11:43
閱讀 4084·2021-08-27 13:10
閱讀 3750·2021-08-12 13:24
閱讀 2126·2019-08-30 12:56
閱讀 3059·2019-08-30 11:22