Static exports ใน Next.js คือวิธีการสร้างไฟล์ HTML และเนื้อหาสถิต (static content) ให้กับเราเมื่อทำการรวบรวมโปรเจ็กต์ Next.js โดยทั่วไปแล้ว Next.js จะเป็นแอพพลิเคชันแบบสแตติก (server-rendered) แต่ static exports จะช่วยให้คุณสามารถสร้างเว็บไซต์สเตติกที่ไม่ต้องการเซิร์ฟเวอร์สร้างเนื้อหาในแต่ละครั้งที่มีการเรียกใช้ ซึ่งเป็นประโยชน์สำหรับเว็บไซต์ที่มีเนื้อหาไม่เปลี่ยนแปลงบ่อยครั้งหรือความเร็วในการโหลดเว็บไซต์ที่สำคัญ.
นี่คือขั้นตอนที่คุณสามารถทำเพื่อใช้ static exports ใน Next.js:
สร้างไฟล์
next.config.js
(หากยังไม่มี):
ถ้ายังไม่มีไฟล์next.config.js
ในรากของโปรเจ็กต์ Next.js ของคุณ ให้สร้างไฟล์ดังกล่าวและกำหนดการตั้งค่าดังนี้:1
2
3
4
5
6
7
8
9
10// next.config.js
module.exports = {
// ตั้งค่า exportPathMap สำหรับการสร้าง static exports
exportPathMap: async function () {
return {
'/': { page: '/' },
// เพิ่มเส้นทางเพิ่มเติมตามความต้องการ
};
},
};คุณสามารถกำหนดเส้นทางอื่น ๆ ที่คุณต้องการสร้าง static exports ในอ็อบเจ็กต์ที่ถูกส่งกลับโดย
exportPathMap
ตามความต้องการของคุณ.สร้างไฟล์หน้าเว็บที่คุณต้องการสร้างเป็นไฟล์ HTML และสร้างไฟล์เนื้อหาสถิต (static content):
ในโฟลเดอร์pages
ของโปรเจ็กต์ Next.js ของคุณ สร้างไฟล์.js
หรือ.tsx
ตามที่คุณต้องการสร้างเว็บไซต์สเตติก และนำเนื้อหาของไฟล์ HTML และเนื้อหาสถิตที่คุณต้องการนำเข้ามาใส่ในไฟล์นั้น ตัวอย่าง:1
2
3
4
5
6
7
8
9
10
11
12
13// pages/index.js
import React from 'react';
function HomePage() {
return (
<div>
<h1>Static Export Example</h1>
<p>This is a static page generated by Next.js.</p>
</div>
);
}
export default HomePage;สร้างสคริปต์สำหรับการรวม static exports:
เพื่อสร้าง static exports ของโปรเจ็กต์ Next.js ของคุณ ให้เพิ่มสคริปต์ในไฟล์package.json
ของคุณ เพื่อใช้งานnext export
:1
2
3
4
5
6"scripts": {
"dev": "next dev",
"build": "next build",
"export": "next export", // เพิ่มสคริปต์สำหรับการ export
"start": "next start"
}รวบรวม static exports:
รันคำสั่งnext export
เพื่อรวบรวม static exports ของโปรเจ็กต์ Next.js ของคุณ:1
2npm run build
npm run exportหรือหากคุณใช้ yarn:
1
2yarn build
yarn exportไฟล์สำหรับ static exports จะถูกสร้างขึ้นในโฟลเดอร์
out
ในรากโปรเจ็กต์ Next.js ของคุณ คุณสามารถตรวจสอบไฟล์และโครงสร้างโฟลเดอร์ที่สร้างขึ้นตามการกำหนดเส้นทางในexportPathMap
ในขั้นตอนที่ 1.นำไฟล์สำหรับ static exports ไปอัปโหลดหรือใช้ในเว็บไซต์ของคุณตามที่คุณต้องการ.
ข้อสังเกต: หลังจากที่ใช้ next export