1. useState 功能:讓靜態(tài)組件可以使用狀態(tài)state,實(shí)現(xiàn)類似于class類組件this.state this.setState()功能威鹿,只要state發(fā)生改變,就重新調(diào)用組件函數(shù)读存,重新渲染render春叫。
?2. useEffect 功能:讓靜態(tài)組件可以使用生命周期方法赠堵,實(shí)現(xiàn)類似于class類組件 componentDidMount、componentDidUpdate起暮、componentWillUnmount功能
?3. useCallback 功能:用于靜態(tài)組件優(yōu)化,可以緩存給子組件傳遞的函數(shù)
?4. useMemo 功能:用于靜態(tài)組件優(yōu)化状勤,可以緩存函數(shù)執(zhí)行完返回的函數(shù)鞋怀,與userCallback功能類似
?5. useReducer 功能:讓靜態(tài)組件可以使用state,實(shí)現(xiàn)方式和useState不同,通過(guò)發(fā)送dispatch(action)-->到-->reducer--->返回新state值持搜,重新調(diào)用組件函數(shù)密似,重新渲染render
? ? ? ? ? ? ? ? ? ? ? 另一個(gè)功能結(jié)合useContext實(shí)現(xiàn) redux 數(shù)據(jù)流管理
?6. useContext 功能:讓實(shí)現(xiàn)靜態(tài)組件跨級(jí)通信,簡(jiǎn)單好用
?7. useReducer+useContext實(shí)現(xiàn)redux葫盼,需要自己封裝combineReducers残腌、dispatch攔截函數(shù)等