Bỏ qua để đến nội dung

React Performance

Các techniques để cải thiện performance của React applications.

Prevent unnecessary re-renders:

const ExpensiveComponent = React.memo(({ data }) => {
console.log("Rendering...");
return <div>{data}</div>;
});
// Chỉ re-render khi data thay đổi
const expensiveValue = useMemo(() => {
return computeExpensiveValue(a, b);
}, [a, b]);
const memoizedCallback = useCallback(() => {
doSomething(a, b);
}, [a, b]);
import { lazy, Suspense } from "react";
const HeavyComponent = lazy(() => import("./HeavyComponent"));
function App() {
return (
<Suspense fallback={<div>Loading...</div>}>
<HeavyComponent />
</Suspense>
);
}

Sử dụng react-window hoặc react-virtualized cho long lists.

  • React DevTools Profiler
  • Chrome DevTools Performance tab
  • Lighthouse