useMemo
和 useCallback
接收的參數都是同樣,第一個參數爲回調 第二個參數爲要依賴的數據緩存
共同做用:
1.僅僅 依賴數據
發生變化, 纔會從新計算結果,也就是起到緩存的做用。
函數
二者區別:
1.useMemo
計算結果是 return
回來的值, 主要用於 緩存計算結果的值 ,應用場景如: 須要 計算的狀態
2.useCallback
計算結果是 函數
, 主要用於 緩存函數,應用場景如: 須要緩存的函數,由於函數式組件每次任何一個 state 的變化 整個組件 都會被從新刷新,一些函數是沒有必要被從新刷新的,此時就應該緩存起來,提升性能,和減小資源浪費。
性能