day10-02.渲染性能优化
useMemo
看个场景
// useMemo
// 作用:在组件渲染时缓存计算的结果
import { useState } from 'react'
function factorialOf(n) {
console.log('斐波那契函数执行了')
return n <= 0 ? 1 : n * factorialOf(n - 1)
}
function App() {
const [count, setCount] = useState(0)
// 计算斐波那契之和
const sumByCount = factorialOf(count)
const [num, setNum] = useState(0)
return (
<>
{sum}
<button onClick={() => setCount(count + 1)}>+count:{count}</button>
<button onClick={() => setNum(num + 1)}>+num:{num}</button>
</>
)
}
export default AppuseMemo缓存计算结果
React.memo
组件默认的渲染机制
使用React.memo优化
props变化重新渲染
props的比较机制
自定义比较函数
useCallback
看个场景
useCallback缓存函数
Last updated