React.lazy ve Suspense ile kod bölme (code splitting) nasıl yapılır?
Cevap
Büyük uygulamalarda tüm kodu tek pakette göndermek ilk yüklemeyi yavaşlatır. React.lazy, bir bileşeni ihtiyaç duyulduğunda ayrı bir dosyadan yükler; Suspense yüklenirken gösterilecek arayüzü belirler.
const AdminPaneli = React.lazy(() => import("./AdminPaneli"));
const Grafikler = React.lazy(() => import("./Grafikler"));
function App() {
return (
<Suspense fallback={<Spinner />}>
<Routes>
<Route path="/admin" element={<AdminPaneli />} />
<Route path="/rapor" element={<Grafikler />} />
</Routes>
</Suspense>
);
}En verimli bölme noktaları sayfa (route) sınırları ve nadiren açılan ağır bileşenlerdir (editör, grafik, harita). Next.js'te sayfalar otomatik bölünür; bileşen düzeyinde next/dynamic kullanılır.
İlgili React soruları
- Virtual DOM nedir ve reconciliation nasıl çalışır?
- Listelerde key prop neden önemlidir? Index kullanmak neden sorunludur?
- Controlled ve uncontrolled component farkı nedir?
- useEffect bağımlılık dizisi nasıl çalışır?
- useMemo ile useCallback arasındaki fark nedir?
- Gereksiz render'ları nasıl tespit eder ve önlersiniz?
Bu konuda başka bir soru biliyor musun?
Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.