定義元件有兩個要求:
元件名稱必須以大寫字母開頭
元件的返回值只能有乙個根元素
function
welcome
(props)
<
/h1>
}reactdom.
render
('react'
/>
, document.
getelementbyid
('root'))
;
函式元件接收乙個單一的props
物件並返回了乙個react元素
class
welcome
extends
react.component
<
/h1>);
}}reactdom.
render
('react'
/>
, document.
getelementbyid
('root'))
;
無論是使用函式或是類來宣告乙個元件,它決不能修改它自己的props
。
所有 react 元件都必須是純函式,並禁止修改其自身props
。
react是單項資料流,父元件改變了屬性,那麼子元件檢視會更新。
屬性props
是外界傳遞過來的,狀態state
是元件本身的,狀態可以在元件中任意修改
元件的屬性和狀態改變都會更新檢視。
函式元件和類元件當然是有區別的,而且函式元件的效能比類元件的效能要高,因為類元件使用的時候要例項化,而函式元件直接執行函式取返回結果即可。為了提高效能,盡量使用函式元件。
區別函式元件
類元件是否有this
沒有
有是否有生命週期沒有有
是否有狀態state
沒有
有
React中函式元件和類元件的區別
定義元件有兩個要求 元件名稱必須以大寫字母開頭 元件的返回值只能有乙個根元素 函式元件 function welcome props reactdom.render react document.getelementbyid root 函式元件接收乙個單一的props物件並返回了乙個react元素 ...
React 的函式元件和類元件中的props
函式元件 函式元件中的props是乙個物件直接作為函式的引數傳入,在元件內容中可以直接用點語法使用props物件中的屬性,如下 function test1 props b logged in.div const element isloggedin reactdom.render element,...
React高階元件和高階函式
高階元件 hoc 是react中對元件邏輯進行重用的高階技術,但高階元件本身並不是react api,它只是一種模式,這種模式是由react自身組合性質必然產生的 具體而言,高階元件就是乙個函式,且該函式接受乙個元件作為引數,並返回乙個新的元件const enhancedcomponent high...