摘要:單向數據流數據一旦更新,會渲染整個。的渲染方式用戶輸入從獲取數據將數據傳給頂層組件將每個組件渲染出來由于是單向數據流,所以不會有雙向數據綁定數據模型的臟檢查確切的操作。
你覺得你用的react框架有什么特點呢?
1)使用jsx語法,可以在js中寫html。
2)單向數據流:數據一旦更新,會渲染整個app。
react的渲染方式:
用戶輸入
從API獲取數據
將數據傳給頂層組件
React將每個組件渲染出來
由于是單向數據流,所以不會有雙向數據綁定、數據模型的臟檢查、確切的DOM操作。
可以接受參數、可復用、可以傳遞、返回結果(渲染組件)
react高階組件高階組件就是實現組件的復用,接收一個組件返回一個新的組件。
虛擬DOM樹javascript雖然快,但是操作DOM卻非常慢。
react的生命周期安裝:創建組件的實例將其插入DOM時,將按以下順序調用這些方法:
constructor()
static getDerivedStateFromProps()
render()
componentDidMount()
更新:props or state的更改可能導致更新。重新呈現組件時,將按以下順序調用這些方法:
static getDerivedStateFromProps()
shouldComponentUpdate()
render()
getSnapshotBeforeUpdate()
componentDidUpdate()
卸載:從DOM中刪除組件時調用此方法。
componentWillUnmount()
setState是異步的還是同步的
異步
setState是如何實現的?
調用setState更新this.state不是馬上生效的,是異步。
然后之后會發生什么?
會執行更新階段的life circle hooks,調用render函數的過程中會執行diff算法。
Vdom
為什么需要vdom?
虛擬dom就是結構樹和 dom 的結構一樣的對象。
用虛擬dom配合diff算法找出需要更新的部分,避免額外更新dom的開銷。
Diff算法的原理
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/102623.html
摘要:入門學習筆記整理一搭建環境入門學習筆記整理二簡介與語法入門學習筆記整理三組件入門學習筆記整理四事件入門學習筆記整理五入門學習筆記整理六組件通信入門學習筆記整理七生命周期入門學習筆記整理八入門學習筆記整理九路由React 入門學習筆記整理(一)——搭建環境 React 入門學習筆記整理(二)—— JSX簡介與語法 React 入門學習筆記整理(三)—— 組件 React 入門學習筆記整理(...
摘要:選擇的主要原因大概是因為該框架出現較早,感覺上會相對成熟,日后學習中遇到問題想要查找答案相對簡單一些,對,就是這么簡單。多說無益,接下來開始的學習,我按照我學習中帶著的問題來一一解答,完成我的入門筆記。主要是針對前端的組件化開發。 這兩天得空,特意來折騰了以下時下火熱的前端框架react,至于為什么選react,作為一個初學者react和vue在技術上的優劣我無權評論,也就不妄加評論了...
摘要:新搭建的個人博客,本文地址學習筆記用重寫在一開始的時候配置中我們就加入了的支持,就是下面的配置,但之前的學習筆記都使用的完成,所以專門作一篇筆記,記錄使用完成創建相關文件修改,增加該入口文件修改,引入該文件做個簡單的測試,看下瀏覽器全部用來 新搭建的個人博客,本文地址:React學習筆記3:用es2015(ES6)重寫CommentBox在一開始的時候webpack配置中我們就加入了e...
摘要:官方說法注本人英語二十六級是和用來創建用戶界面的庫。很多人將認為是中的。怎么說呢現在的自己就是個跟風狗啊,什么流行先學習了再說,再看看能不能應用在具體項目上。暫時先停下的學習,坐等。不過學習的腳步還是跟不上潮流的發展速度啊。 Why React? 官方說法 注:本人英語二十六級 React是Facebook和Instagram用來創建用戶界面的JavaScript庫。很多...
摘要:前言以深入學習技術棧為線索,記錄下學習的重要知識內容。要傳入時,必須使用屬性表達式。如果要使用自定義屬性,要使用前綴這與標準是一致的。 前言 以《深入學習react技術棧》為線索,記錄下學習React的重要知識內容。本系列文章沒有涵蓋全部的react知識內容,只是記錄下了學習之路上的重要知識點,一方面是自己的總結,同時拿出來和在學習react的人們一塊分享,共同進步。 正文 一:rea...
摘要:新搭建的個人博客,本文地址學習筆記環境搭建本文的書寫環境為,之后會補充下的差異創建學習目錄初始化項目根據相關提示完善信息,入口文件安裝相關包,并且使用也就是支持,需要包,因為我之前做個一些相關項目,所以部分包已經全局安裝,比如等等,大家 新搭建的個人博客,本文地址:React學習筆記1:環境搭建 本文的書寫環境為mac,之后會補充windows下的差異 1、創建學習目錄 mkdir l...
閱讀 1781·2021-11-15 11:37
閱讀 3052·2021-11-04 16:05
閱讀 1920·2021-10-27 14:18
閱讀 2752·2021-08-12 13:30
閱讀 2496·2019-08-29 14:18
閱讀 2083·2019-08-29 13:07
閱讀 2020·2019-08-27 10:54
閱讀 2723·2019-08-26 12:15