本質(zhì):高階組件本質(zhì)上就是一個函數(shù)。對只有一層的高階組件,它是純函數(shù),并且入?yún)⑹荱I組件,返回一個新的React組件。
意義:高階組件是React中邏輯復(fù)用的一種高級技巧。
高階組件的標(biāo)準(zhǔn)語法:fn(UI組件)(return props=>(<UI組件 {...props} />))
備注:{...props} 屬性繼承,在封裝高階時一定要添加屬性繼承。

高階組件
這個高階組件(高階函數(shù))就是純函數(shù),接收一個UI組件,返回一個新的React組件。
WrappedComponent,一般被稱之為“UI組件”(界面)
footer這個高階組件,一般被稱之為“容器組件”(裝飾)
一、如何使用高階組件?
1、在類組件上有兩種方式使用高階組件——函數(shù)調(diào)用、ES6裝飾器。
2、在函數(shù)式組件上只有一種方式使用高階組件——函數(shù)調(diào)用。
二、使用場景
舉例一:用高階組件實(shí)現(xiàn)頁面布局的差異化。
舉例二:用高階實(shí)現(xiàn)權(quán)限設(shè)計(jì)(適用小項(xiàng)目)。
舉例三:把一些全局的api(公共方法)通過高階組件傳遞給UI組件
三、二層的高階組件
外層是業(yè)務(wù)層,內(nèi)層是標(biāo)準(zhǔn)的高階組件
如果是多層的高階組件,其語法參考如下:
export default arg1 => arg2 = C => props => <C/>
fn()()(Home)
提示:多層的高階組件,很少很少用得到。