組件、ReactElement、組件實例的區(qū)別及組件的渲染過程

一、組件、ReactElement、組件實例的區(qū)別
  1. 概念上的區(qū)別
  • 組件是一個函數(shù)或者一個類,它決定了如何把數(shù)據(jù)變成視圖。
  • ReactElement只是一個普通對象,它表述了組件實例或者DOM節(jié)點。
  • 組件實例則是組件類的實例化對象。
  1. 代碼演示
    import React from 'react;
    import { render } from 'react-dom;
    import App from './src/App';

    const componentInstance = render(<App />, document.querySelector('root'));
    
    console.log('組件、ReactElement、組件實例依次如下:');
    console.log(App);
    console.log(<App />);
    console.log(componentInstance);
    

二、React組件的渲染過程

當react遇到表示組件的ReactElement時,它會給這個ReactElement表示的組件一些props(有時候也包括context),然后問該組件渲染的ReactElement是什么。如果渲染的仍然是表示組件的ReactElement,那么將會一直問下去,直到了解所有組件要渲染的DOM元素為止。此時,React就可以用react-dom或者react-native這樣的渲染模塊來執(zhí)行渲染了。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 原教程內(nèi)容詳見精益 React 學習指南,這只是我在學習過程中的一些閱讀筆記,個人覺得該教程講解深入淺出,比目前大...
    leonaxiong閱讀 2,944評論 1 18
  • 深入JSX date:20170412筆記原文其實JSX是React.createElement(componen...
    gaoer1938閱讀 8,182評論 2 35
  • react 基本概念解析 react 的組件聲明周期 react 高階組件,context, redux 等高級...
    南航閱讀 1,135評論 0 1
  • 做React需要會什么? react的功能其實很單一,主要負責渲染的功能,現(xiàn)有的框架,比如angular是一個大而...
    蒼都閱讀 14,955評論 1 139
  • 《夏末秋初》 春天已經(jīng)枯萎 我還沒有撒下種子 泥土醒來的時候 除了天賜的眼淚 我的地是空無的 可以預料 貧窮一定會...
    凡塵一粒沙阿強閱讀 614評論 0 2

友情鏈接更多精彩內(nèi)容