在react中,element是最小的構建單元,是一個對象,不是DOM;element可以在代碼中使用jsx進行定義,語法為“const element =…”;Element被創建之后是不可以被改變的,如果要改變DOM只能新創建一個Element。
本教程操作環境:Windows10系統、react17.0.1版、Dell G3電腦。
react element是什么
Element
1.Element是react中最小的構建單元,是一個對象不是DOM,創建的代價比較低。
(1)通常我們在代碼中使用JSX定義一個Element:
const element = <h1>Hello, world</h1>;
(2)使用ReactDOM.render來渲染
ReactDOM.render( element, document.getElementById('root') );
2.一旦一個Element被創建之后,是不可被改變的,它就像電影中的幀,如果要改變DOM的顯示,只能新創建一個Element。
3.React會比較前后兩個Element,只更新需要更新的內容。
擴展知識:
虛擬DOM
1.React并不是直接構建DOM元素的,而是通過創建與DOM結構類似的對象。然后根據這個結構,也就是React DOM來渲染真正的DOM。
2.當有改變的時候,新建對象,然后使之與之前的結構對比,記錄下兩者的差異,這里可以看下diff算法。
3.然后根據記錄的差異更新DOM。
ReactElement
1、虛擬'DOM';
2、本質是一個不可變的對象;
type屬性:如果是字符串如'h1',表示一個DOM節點,它的props屬性對于DOM節點的屬性.若type屬性是一個表示組件的
函數或者類時,它表示一個組件;
3、兩種類型的ReactElement可以相互嵌套,彼此混合描述DOM樹;
【