Rilis versi resmi Next.js 15
(nextjs.org)Versi resmi Next.js 15 telah dirilis bertepatan dengan konferensi 2024. Berikut ini tidak mencakup perubahan yang sudah dijelaskan pada Next.js 15 RC 2 sebelumnya. Jika ingin mengetahui perubahan-perubahannya, silakan baca itu terlebih dahulu.
-
Caching Semantics (Breaking): Untuk perilaku berikut, caching tidak lagi menjadi default. Alasan perubahan ini adalah karena dapat menimbulkan masalah saat berinteraksi dengan
Partial Prerendering(PPR)atau library pihak ketiga, sehingga pendekatan cache default ditinjau ulang. Sebelumnyaforce-cacheadalah nilai default, tetapi kini diubah menjadino-storeagar secara bawaan tidak di-cache, sehingga memberikan performa dan data yang lebih dapat diprediksi.- Permintaan
fetchkini secara default tidak di-cache, denganno-storesebagai nilai bawaan. Jika diperlukan, Anda dapat mengatur caching dengan opsiforce-cache. - GET Route Handlers juga tidak di-cache secara default. Anda dapat menggunakan opsi
force-staticuntuk mengaktifkan caching. - Client Router Cache mencerminkan data terbaru saat berpindah halaman dan secara default tidak di-cache. Untuk mengembalikan perilaku sebelumnya, Anda dapat mengatur opsi
staleTimes.
- Permintaan
-
React 19 Support: Next.js 15 telah diperbarui agar sesuai dengan React 19, dan tetap menjaga kompatibilitas dengan React 18 pada Pages Router. App Router menggunakan React 19 RC, dan dengan mencerminkan masukan komunitas, proyek yang menggunakan React 18 juga dapat ditingkatkan ke React 19. Selain itu, React Compiler diperkenalkan untuk memungkinkan optimasi otomatis dan mengurangi kebutuhan memoization manual. Perubahan ini dilakukan sebagai persiapan untuk rilis resmi React 19 mendatang.
- React Compiler (Experimental): React Compiler adalah compiler eksperimental yang dibuat oleh tim React di Meta, yang memahami makna JavaScript dan aturan React untuk mengoptimalkan kode secara otomatis. Dengan ini, kebutuhan developer untuk melakukan memoization manual melalui API seperti
useMemodanuseCallbackdapat berkurang. Fitur ini didukung di Next.js 15 dan saat ini hanya tersedia sebagai plugin Babel, sehingga waktu build bisa menjadi lebih lambat. - Hydration Error Improvements: Next.js 15 lebih lanjut mengembangkan pesan error yang telah ditingkatkan pada versi sebelumnya serta cara penanganan hydration error. Kini ketika hydration error terjadi, source code dari error tersebut beserta saran cara memperbaikinya akan ditampilkan bersama. Ini membantu developer lebih mudah memahami dan memperbaiki error.
- React Compiler (Experimental): React Compiler adalah compiler eksperimental yang dibuat oleh tim React di Meta, yang memahami makna JavaScript dan aturan React untuk mengoptimalkan kode secara otomatis. Dengan ini, kebutuhan developer untuk melakukan memoization manual melalui API seperti
-
Turbopack Dev: Turbopack kini telah stabil, dan kecepatannya yang tinggi akan meningkatkan pengalaman pengembangan Anda. Startup server lokal meningkat sekitar 76%, Fast Refresh 96%, dan kompilasi route pertama tanpa cache meningkat sekitar 45%.
-
unstable_after API (Experimental):
unstable_afteradalah API eksperimental yang diperkenalkan di Next.js 15, yang memungkinkan penanganan tugas sekunder seperti logging atau analitik setelah respons ke pengguna dikirimkan. Karena fungsi serverless berhenti berjalan segera setelah respons selesai, masalah ini dapat diatasi dengan menggunakanafter()untuk menunda eksekusi tugas hingga setelah respons selesai. Ini dapat digunakan untuk menyinkronkan proses seperti loading dan data statistik dengan sistem eksternal.
5 komentar
Untuk proyek baru, saya pilih Vue 3 atau SvelteKit.
React yang didukung Next15 mulai dari 19, tapi React 19 sendiri masih belum lepas dari status RC.
Seperti yang disampaikan orang lain, masih ada isu terkait perubahan fungsi jadi untuk saat ini memang masih RC, tetapi selain bagian itu tampaknya bisa dianggap stable.
Tweet tanya jawab maintainer terkait https://x.com/timneutkens/status/1848464958830612729