useCallback
code:ts
const memoizedCallback = useCallback(
() => {
doSomething(a, b);
},
);
メモ化されたコールバックを返します。
インラインのコールバックとそれが依存している値の配列を渡してください。useCallback はそのコールバックをメモ化したものを返し、その関数は依存配列の要素のいずれかが変化した場合にのみ変化します。これは、不必要なレンダーを避けるために(例えば shouldComponentUpdate などを使って)参照の同一性を見るよう最適化されたコンポーネントにコールバックを渡す場合に便利です。
useCallback(fn, deps) は useMemo(() => fn, deps) と等価です。
useEffectと同様で、第二引数の依存配列の値が要素が変化した場合のみ、メモ化される