Error Handling ใน Next.js

Next.js มีระบบการจัดการข้อผิดพลาดที่ช่วยให้คุณสามารถจัดการกับข้อผิดพลาดที่เกิดขึ้นในโปรเจ็กต์ของคุณได้อย่างมีประสิทธิภาพ

เมื่อเกิดข้อผิดพลาดใน Next.js จะถูกส่งไปยังไฟล์ error.js ในโฟลเดอร์ pages ไฟล์นี้สามารถปรับแต่งได้เพื่อให้คุณสามารถแสดงข้อความแสดงข้อผิดพลาดที่กำหนดเองหรือนำผู้ใช้ไปยังหน้าอื่นเมื่อเกิดข้อผิดพลาด

คุณยังสามารถใช้ ErrorBoundary คอมโพเนนต์เพื่อจัดการกับข้อผิดพลาดที่เกิดขึ้นในหน้าของคุณ ErrorBoundary คอมโพเนนต์จะจับข้อผิดพลาดที่เกิดขึ้นในหน้าของคุณและแสดงข้อความแสดงข้อผิดพลาดที่กำหนดเอง

ต่อไปนี้คือวิธีจัดการกับข้อผิดพลาดใน Next.js:

  • ใช้ไฟล์ error.js: ไฟล์ error.js เป็นไฟล์เริ่มต้นสำหรับการจัดการข้อผิดพลาดใน Next.js ไฟล์นี้สามารถปรับแต่งได้เพื่อให้คุณสามารถแสดงข้อความแสดงข้อผิดพลาดที่กำหนดเองหรือนำผู้ใช้ไปยังหน้าอื่นเมื่อเกิดข้อผิดพลาด
1
2
3
4
5
6
7
8
9
10
// pages/error.js

export default function ErrorPage() {
return (
<div>
<h1>An error has occurred</h1>
<p>Please try again later</p>
</div>
);
}
  • ใช้ ErrorBoundary คอมโพเนนต์: ErrorBoundary คอมโพเนนต์จะจับข้อผิดพลาดที่เกิดขึ้นในหน้าของคุณและแสดงข้อความแสดงข้อผิดพลาดที่กำหนดเอง
1
2
3
4
5
6
7
8
9
10
11
// pages/index.js

import ErrorBoundary from 'next/error-boundary';

export default function Index() {
return (
<ErrorBoundary>
<h1>This is the index page</h1>
</ErrorBoundary>
);
}
  • ใช้ try-catch block: คุณสามารถใช้ try-catch block เพื่อจัดการกับข้อผิดพลาดที่เกิดขึ้นในโค้ดของคุณ
1
2
3
4
5
try {
// Code that might throw an error
} catch (error) {
// Handle the error
}

คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับการจัดการข้อผิดพลาดใน Next.js จากเอกสารประกอบของ Next.js

การจัดการข้อผิดพลาดเป็นสิ่งสำคัญมากสำหรับแอปพลิเคชันใด ๆ Next.js มีเครื่องมือที่ทรงพลังที่จะช่วยให้คุณจัดการกับข้อผิดพลาดที่เกิดขึ้นในโปรเจ็กต์ของคุณได้อย่างมีประสิทธิภาพ