Prestasi adalah kunci dalam aplikasi React, terutamanya apabila apl anda meningkat. Dalam panduan ini, kami akan meneroka cara useMemo dan useCallback boleh membantu anda mengoptimumkan komponen React anda dan mengelakkan pemaparan semula yang tidak perlu.
Gelagat pemaparan semula React adalah berkuasa tetapi boleh menyebabkan kesesakan prestasi apabila tidak diurus dengan betul. useMemo dan useCallback ialah dua cangkuk yang direka untuk menangani isu ini.
useMemo menghafal hasil pengiraan dan hanya mengira semula apabila kebergantungannya berubah.
const memoizedValue = useMemo(() => computeExpensiveValue(a, b), [a, b]);
Bayangkan pengiraan yang mahal dalam komponen React:
import React, { useMemo } from "react"; function ExpensiveComponent({ a, b }) { const expensiveValue = useMemo(() => { console.log("Calculating..."); return a + b; }, [a, b]); return <div>Result: {expensiveValue}</div>; }
Tanpa useMemo, pengiraan ini berjalan pada setiap pemaparan, walaupun apabila a atau b tidak berubah.
useCallback menghafal contoh fungsi dan memastikan ia dicipta semula hanya apabila kebergantungannya berubah. Ia amat berguna apabila menghantar panggilan balik kepada komponen kanak-kanak.
const memoizedCallback = useCallback(() => doSomething(a, b), [a, b]);
Elakkan render semula kanak-kanak yang tidak perlu:
import React, { useCallback } from "react"; function ParentComponent() { const handleClick = useCallback(() => { console.log("Button clicked!"); }, []); return <ChildComponent onClick={handleClick} />; } function ChildComponent({ onClick }) { console.log("Child rendered"); return <button onClick={onClick}>Click Me</button>; }
Lihat panduan penuh tentang Perduaan Skrip untuk penjelasan yang mendalam dan contoh praktikal.
Ikuti saya untuk mendapatkan lebih banyak petua dan tutorial React! Mari sambung dalam ulasan di bawah.
Atas ialah kandungan terperinci Mengoptimumkan Apl React dengan useMemo dan useCallback: Panduan Lengkap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!