
Next.js 15 là phiên bản chính thức của framework React phổ biến nhất hiện nay, mang đến nhiều cải tiến về hiệu suất, trải nghiệm lập trình viên và các tính năng mới cho việc xây dựng ứng dụng web full-stack. Phiên bản này tập trung vào sự ổn định đồng thời bổ sung các cập nhật đáng kể cho rendering, caching và tích hợp React 19.

Giới thiệu về Next.js 15
Next.js 15 ra mắt vào ngày 21/10/2024 với định hướng trở thành framework ổn định nhất cho React development. Đây là phiên bản kết hợp cải tiến từ cả RC1 và RC2, đảm bảo các developer có thể tin tưởng sử dụng trong production. Theo thông tin từ blog chính thức của Vercel, Next.js 15 tập trung vào stability nhưng vẫn bổ sung thêm nhiều tính năng hấp dẫn.
Framework này cung cấp giải pháp toàn diện cho việc phát triển web hiện đại, từ Server Components, Route Handlers, đến Image Optimization. Với Next.js 15, developer có thể xây dựng ứng dụng nhanh hơn, tối ưu hơn và dễ bảo trì hơn.
Điểm nổi bật của Next.js 15
- React 19 Support: Hỗ trợ đầy đủ React 19, React Compiler (experimental) và cải thiện đáng kể hydration error handling
- Turbopack Dev Stable: Đánh dấu bước chuyển quan trọng khi Turbopack trở thành bundler ổn định cho phát triển local
- Async Request APIs: Chuyển headers, cookies, params, searchParams sang asynchronous để tối ưu SSR rendering
- Caching Semantics: Thay đổi cách caching mặc định cho GET Route Handlers và Client Router Cache
- @next/codemod CLI: Công cụ tự động hoá nâng cấp codebase lên phiên bản mới một cách dễ dàng
- Instrumentation.js API: API mới cho server lifecycle observability
- Enhanced Forms: Thư viện next/form cải thiện HTML forms với client-side navigation
Async Request APIs – Thay đổi lớn nhất
Một trong những breaking change quan trọng nhất trong Next.js 15 là chuyển các API phụ thuộc vào request data sang asynchronous model. Thay đổi này phản ánh xu hướng tối ưu rendering ở server.
Trong mô hình truyền thống SSR, server chờ request rồi mới render. Tuy nhiên, không phải component nào cũng phụ thuộc vào dữ liệu request-specific. Next.js 15 cho phép server chuẩn bị nội dung trước khi request đến, giúp cải thiện Time to First Byte.

Các API bị ảnh hưởng
- cookies()
- headers()
- draftMode()
- params (trong layout.js, page.js, route.js)
- searchParams (trong page.js)
- generateMetadata, generateViewport
Ví dụ thực tế
Mô hình synchronous truyền thống:
import { cookies } from 'next/headers'
export default function Header() {
const token = cookies().get('token')
return <div>Welcome {token.value}</div>
}
Mô hình asynchronous mới trong Next.js 15:
import { cookies } from 'next/headers'
export default async function Header() {
const cookieStore = await cookies()
const token = cookieStore.get('token')
return <div>Welcome {token.value}</div>
}
Caching Semantics – Thay đổi mặc định
Next.js App Router ban đầu có caching opinions mặc định được thiết kế để tối ưu performance. Tuy nhiên, dựa trên phản hồi từ cộng đồng, Next.js 15 thay đổi cách caching:
- GET Route Handlers: Không còn cached mặc định
- Client Router Cache: Không còn cached mặc định
- Opt-in caching: Developer có thể chọn caching khi cần
Thay đổi này giúp tránh các vấn đề stale data khi làm việc với dữ liệu thời gian thực và API bên thứ ba, đồng thời cải thiện sự tương thích với Partial Prerendering (PPR).
Turbopack và cải tiến Developer Experience
Turbopack là bundler viết bằng Rust của Vercel, và trong Next.js 15 nó đã đạt trạng thái stable cho môi trường development. Những cải tiến bao gồm:
- Hot Module Replacement nhanh hơn đáng kể
- Build times giảm xuống mức tối thiểu cho project lớn
- Memory usage được tối ưu hoá
- Hỗ trợ đầy đủ TypeScript, JSX và CSS Modules

Static Indicator và Server Actions
Static Indicator là tính năng mới giúp developer nhận diện nhanh các tuyến đường tĩnh (static routes) trong quá trình phát triển. Khi truy cập một route tĩnh, chỉ báo hiển thị ngay trên giao diện dev tools để xác nhận route không tham gia dynamic rendering.
Server Actions trong Next.js 15 cũng được nâng cấp với:
- Unguessable endpoints cho bảo mật tốt hơn
- Removal of unused actions
- Cải thiện error handling và debugging
Hướng dẫn migration
Để nâng cấp lên Next.js 15, developer cần thực hiện các bước sau:
- Cập nhật dependencies:
npm install next@latest react@rc react-dom@rc - Chạy codemod:
npx @next/codemod@canary upgrade latest - Kiểm tra việc sử dụng headers, cookies trong components
- Kiểm tra lại caching logic hiện tại
- Chạy test suite và kiểm tra trên môi trường staging
Tương lai của Next.js
Với Next.js 15, Vercel đặt nền tảng vững chắc cho các tính năng sắp tới bao gồm Partial Prerendering cải tiến, Server Components tối ưu hơn, và tích hợp sâu hơn với Vercel platform. Sự hỗ trợ React 19 mở ra cơ hội sử dụng React Compiler để tối ưu runtime mà không cần thay đổi code.
Nguồn tham khảo:
