React函式元件和類元件的區別

2021-09-24 05:39:19 字數 1002 閱讀 8832

定義元件有兩個要求:

元件名稱必須以大寫字母開頭

元件的返回值只能有乙個根元素

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...