Next.js 15 - Những Điểm Mới Và Cách Tận Dụng Tối Đa

February 10, 2025 (1mo ago)

Next.js 15 ra mắt với nhiều cải tiến mạnh mẽ giúp tối ưu hiệu suất và trải nghiệm phát triển. Nếu bạn đang xây dựng ứng dụng web hiện đại, đây là một bản cập nhật không thể bỏ qua!


1️⃣ React Server Components (RSC) Mạnh Mẽ Hơn

Next.js 15 tiếp tục đẩy mạnh React Server Components giúp giảm tải công việc render trên client.

🔹 Lợi ích:

Giảm kích thước bundle trên clientCải thiện SEO và thời gian tải trangTích hợp tốt hơn với cơ sở dữ liệu và API server

🔹 Ví dụ:

// Server Component - Chạy trên server, không load trên client
async function ProductList() {
  const products = await fetch("https://api.example.com/products").then(res => res.json());
  return (
    <ul>
      {products.map(product => (
        <li key={product.id}>{product.name}</li>
      ))}
    </ul>
  );
}
export default ProductList;

2️⃣ Tối Ưu Hiệu Suất Với Tính Năng Caching Mới

Next.js 15 cải tiến automatic caching giúp giảm thời gian tải dữ liệu.

🔹 Ví dụ:

import { unstable_cache } from "next/cache";
 
const getData = unstable_cache(async () => {
  return await fetch("https://api.example.com/data").then(res => res.json());
}, { revalidate: 60 }); // Cache trong 60 giây
 
export default async function Page() {
  const data = await getData();
  return <pre>{JSON.stringify(data, null, 2)}</pre>;
}

3️⃣ Middleware Và Edge Functions Mạnh Mẽ Hơn

Next.js 15 tối ưu hóa middleware giúp xử lý request nhanh hơn.

🔹 Ví dụ Middleware:

import { NextRequest, NextResponse } from "next/server";
 
export function middleware(req: NextRequest) {
  if (!req.cookies.get("auth")) {
    return NextResponse.redirect("/login");
  }
  return NextResponse.next();
}

4️⃣ Hỗ Trợ Turbopack - Build Nhanh Hơn Gấp 10 Lần

Turbopack giúp tăng tốc development với tốc độ build nhanh hơn Webpack.

Thay thế Webpack trong development. ✅ Tăng tốc HMR (Hot Module Replacement).


5️⃣ Cải Tiến App Router Và Layouts

Next.js 15 tiếp tục hoàn thiện App Router, giúp xây dựng UI linh hoạt hơn.

export default function Layout({ children }: { children: React.ReactNode }) {
  return (
    <div className="layout">
      <Navbar />
      <main>{children}</main>
    </div>
  );
}

📌 Next.js 15 là bản cập nhật đáng giá giúp bạn xây dựng web app nhanh hơn, mạnh mẽ hơn! 🚀