กลับไปหน้าบทความ

อ่าน 7 นาที

เน็กซ์.เจเอส

Next.js เป็น เฟรมเวิร์กการพัฒนาเว็บ แบบฟูลสแต็ก โอเพน ซอร์ส ที่สร้างโดยบริษัทเอกชน Vercel ซึ่งให้บริการแอปพลิเคชันเว็บที่ใช้ React พร้อมด้วย การเรนเดอร์ฝั่งเซิร์ฟเวอร์ และ...

เน็กซ์.เจเอส

เน็กซ์.เจเอส
ผู้เขียนต้นฉบับกีเยร์โม เราช์, ทิม นอยท์เกนส์, นาโอยูกิ คาเนซาว่า, อารูโนดะ ซูซิริปาลา, โทนี่ โควาเนน, แดน แซจด์บานด์[ 1 ]
นักพัฒนาVercelและชุมชนโอเพนซอร์ส[ 2 ]
ปล่อย25 ตุลาคม 2559 [ 3 ] ( 25 ตุลาคม 2559 )
เวอร์ชันเสถียร
16.2.9 [ 4 ] แก้ไขข้อมูลนี้บนวิกิดาต้า / 10 มิถุนายน 2026 ( 10 มิถุนายน 2026 )
รุ่นทดลองใช้งาน
v16.3.0-preview.3 [ 5 ]
เขียนเป็นJavaScript , TypeScriptและRust
แพลตฟอร์มแพลตฟอร์มเว็บ
พิมพ์เฟรมเวิร์กเว็บแบบฟูลสแต็ก
ใบอนุญาตใบอนุญาต MIT
เว็บไซต์nextjs.org แก้ไขข้อมูลนี้บนวิกิดาต้า
ที่เก็บข้อมูล
  • github.com/vercel/next.js

Next.jsเป็นเฟรมเวิร์กการพัฒนาเว็บ แบบฟูลสแต็ก โอเพนซอร์ส ที่สร้างโดยบริษัทเอกชนVercelซึ่งให้บริการแอปพลิเคชันเว็บที่ใช้React พร้อมด้วย การเรนเดอร์ฝั่งเซิร์ฟเวอร์และการเรนเดอร์แบบคงที่

เอกสารประกอบของ React กล่าวถึง Next.js ในกลุ่ม "ชุดเครื่องมือที่แนะนำ" โดยแนะนำให้นักพัฒนาใช้เมื่อ "สร้างเว็บไซต์ที่แสดงผลฝั่งเซิร์ฟเวอร์ด้วยNode.js " [ 6 ]ในขณะที่แอป React แบบดั้งเดิมสามารถแสดงผลเนื้อหาได้เฉพาะในเบราว์เซอร์ฝั่งไคลเอ็นต์เท่านั้น Next.js ขยายฟังก์ชันการทำงานนี้ให้ครอบคลุมถึงแอปพลิเคชันที่แสดงผลบนฝั่งเซิร์ฟเวอร์ด้วย

ลิขสิทธิ์และเครื่องหมายการค้าของ Next.js เป็นของVercel [ 7 ] ซึ่งยังดูแลและ เป็นผู้นำในการพัฒนาโอเพนซอร์สอีกด้วย[ 8 ]

พื้นหลัง

Next.js เป็น เฟรมเวิร์ก Reactที่ช่วยให้มีคุณสมบัติพิเศษเพิ่มเติมหลายอย่าง รวมถึงการเรนเดอร์ฝั่งเซิร์ฟเวอร์และการเรนเดอร์แบบคงที่ [ 9 ] Reactเป็นไลบรารี JavaScriptที่ใช้กันทั่วไปในการสร้างเว็บแอปพลิเคชันที่แสดงผลในเบราว์เซอร์ของไคลเอนต์ด้วย JavaScript [ 10 ]อย่างไรก็ตาม นักพัฒนาตระหนักถึงปัญหาหลายประการของกลยุทธ์นี้ เช่น ไม่รองรับผู้ใช้ที่ไม่มีสิทธิ์เข้าถึง JavaScript หรือปิดใช้งาน JavaScript ปัญหาด้านความปลอดภัยที่อาจเกิดขึ้น เวลาในการโหลดหน้าเว็บที่ยาวนานขึ้นอย่างมาก และส่งผลเสียต่อการเพิ่มประสิทธิภาพการค้นหาโดยรวมของเว็บไซต์[ 10 ] เฟรมเวิร์กเช่น Next.js หลีกเลี่ยงปัญหาเหล่านี้โดยอนุญาตให้เรนเดอร์เว็บไซต์บางส่วนหรือทั้งหมดบนฝั่งเซิร์ฟเวอร์ก่อนที่จะส่งไปยังไคลเอนต์[ 10 ] [ 11 ] Next.js เป็นหนึ่งในเฟรมเวิร์กยอดนิยมสำหรับ React [ 12 ]เป็นหนึ่งใน "ชุดเครื่องมือ" ที่แนะนำหลายอย่างที่มีให้ใช้งานเมื่อเริ่มต้นแอปใหม่ ซึ่งทั้งหมดนี้ให้เลเยอร์ของนามธรรมเพื่อช่วยในงานทั่วไป[ 13 ] Next.js ต้องการNode.jsและสามารถเริ่มต้นใช้งานได้โดยใช้ npm

Googleได้มีส่วนร่วมในโครงการ Next.js รวมถึง pull request จำนวน 43 รายการในปี 2019 [ 14 ] เดือนตุลาคม 2024 เฟรมเวิร์กนี้ถูกใช้โดยเว็บไซต์ขนาดใหญ่หลายแห่ง รวมถึงWalmart , Apple , Nike , Netflix , TikTok , Uber , Lyft , StarbucksและSpotify [ 10 ] [ 15 ]ในช่วงต้นปี 2020 Vercel ได้ระดมทุน Series A จำนวน 21 ล้านดอลลาร์สหรัฐ เพื่อสนับสนุนการปรับปรุงซอฟต์แวร์[ 16 ]ปัจจุบัน Guillermo Rauch ผู้เขียนเฟรมเวิร์กดั้งเดิม ดำรงตำแหน่ง CEO ของ Vercel และ Tim Neutkens เป็นผู้ดูแลหลักของโครงการ[ 17 ]

ประวัติการพัฒนา

Next.js เปิดตัวครั้งแรกในฐานะโครงการโอเพนซอร์สบนGitHubเมื่อวันที่ 25 ตุลาคม 2016 [ 3 ]เดิมทีได้รับการพัฒนาโดยยึดหลักการ 6 ประการ ได้แก่ ฟังก์ชันการทำงานแบบสำเร็จรูปที่ไม่ต้องตั้งค่า JavaScript ทุกที่ ฟังก์ชันทั้งหมดเขียนด้วย JavaScript การแบ่งโค้ดอัตโนมัติและการเรนเดอร์ฝั่งเซิร์ฟเวอร์ การดึงข้อมูลที่กำหนดค่าได้ การคาดการณ์คำขอ และการทำให้การปรับใช้ง่ายขึ้น[ 18 ]

Next.js 2.0 ได้รับการประกาศในเดือนมีนาคม พ.ศ. 2560 โดยมีการปรับปรุงหลายอย่างที่ทำให้การทำงานกับเว็บไซต์ขนาดเล็กง่ายขึ้น นอกจากนี้ยังเพิ่มประสิทธิภาพในการสร้างและปรับปรุงความสามารถในการปรับขนาดของฟีเจอร์ hot-module replacement [ 19 ]

เวอร์ชัน 7.0 เปิดตัวในเดือนกันยายน พ.ศ. 2561 พร้อมการจัดการข้อผิดพลาดที่ดีขึ้นและการสนับสนุนAPI context ของ React เพื่อการจัดการเส้นทางแบบไดนามิกที่ดีขึ้น นอกจากนี้ยังเป็นเวอร์ชันแรกที่อัปเกรดเป็นWebpack 4 อีกด้วย [ 20 ]

เวอร์ชัน 8.0 เปิดตัวในเดือนกุมภาพันธ์ พ.ศ. 2562 และเป็นเวอร์ชันแรกที่นำเสนอ การปรับใช้แอปพลิเคชัน แบบไร้เซิร์ฟเวอร์ซึ่งโค้ดจะถูกแบ่งออกเป็นฟังก์ชันแลมบ์ดาที่ทำงานตามความต้องการ เวอร์ชันนี้ยังช่วยลดเวลาและทรัพยากรที่จำเป็นสำหรับการส่งออกแบบคงที่และปรับปรุงประสิทธิภาพการดึงข้อมูลล่วงหน้า[ 21 ]

เวอร์ชัน 9.3 ซึ่งประกาศในเดือนมีนาคม พ.ศ. 2563 มีการปรับปรุงประสิทธิภาพต่างๆ และ รองรับโมดูล Sassและ CSS ทั่วโลก [ 22 ]

เมื่อวันที่ 27 กรกฎาคม 2020 มีการประกาศ Next.js เวอร์ชัน 9.5 ซึ่งเพิ่มความสามารถใหม่ๆ รวมถึงการสร้างใหม่แบบคงที่ทีละน้อย การเขียนใหม่ และการรองรับการเปลี่ยนเส้นทาง[ 23 ]

เมื่อวันที่ 15 มิถุนายน 2021 Next.js เวอร์ชัน 11 ได้ถูกปล่อยออกมา โดยมีการแนะนำคุณสมบัติต่างๆ เช่น การรองรับ Webpack 5, การแสดงตัวอย่างฟังก์ชันการเขียนโค้ดร่วมกันแบบเรียลไทม์ "Next.js Live" และฟังก์ชันทดลองของการแปลงอัตโนมัติจาก Create React App ไปยังฟอร์มที่เข้ากันได้กับ Next.js "Create React App Migration" [ 24 ]

เมื่อวันที่ 26 ตุลาคม 2021 Next.js 12 ได้ถูกปล่อยออกมา โดยเพิ่ม คอมไพเลอร์ Rustทำให้การคอมไพล์เร็วขึ้น รองรับ AVIF , Edge Functions & Middleware และ Native ESM & URL Imports [ 25 ]

เมื่อวันที่ 26 ตุลาคม 2022 Vercel ได้ปล่อย Next.js 13 ออกมา การเปิดตัวครั้งสำคัญนี้ได้นำรูปแบบการกำหนดเส้นทางใหม่มาสู่เบต้าพร้อมด้วยการเพิ่ม App Router ที่รวมถึงการสนับสนุนเลย์เอาต์ คอมโพเนนต์เซิร์ฟเวอร์ React การสตรีม และชุดวิธีการดึงข้อมูลใหม่ นอกจากนี้ Vercel ยังได้ประกาศชุดเครื่องมือใหม่สำหรับการพัฒนาส่วนหน้าชื่อ Turbo ซึ่งรวมถึง Turbopack ซึ่งเป็นผู้สืบทอดของ Webpack และ Turborepo สำหรับระบบการสร้างแบบเพิ่มทีละน้อย[ 26 ]

ในเดือนพฤษภาคม 2023 Vercel ได้ปล่อย Next.js 13.4 ซึ่งมาพร้อมกับ App Router เวอร์ชันเสถียรที่ช่วยให้นักพัฒนาสามารถใช้งานในเวอร์ชันใช้งานจริงได้[ 27 ]

ในเดือนตุลาคม พ.ศ. 2566 Vercel ได้ออก Next.js 14 ซึ่งมาพร้อมกับการจัดการหน่วยความจำที่ดีขึ้นโดยใช้รันไทม์ edge [ 28 ]

ในเดือนตุลาคม พ.ศ. 2567 Vercel ได้ออก Next.js 15 ซึ่งแนะนำ Turbopack ซึ่งเป็น bundler ที่ใช้ Rust (ซึ่งเร็วกว่า Webpack) รองรับ React 19 และ API การร้องขอแบบอะซิงโครนัส[ 29 ] [ 30 ]

ในเดือนตุลาคม พ.ศ. 2568 Vercel ได้ปล่อย Next.js 16 ออกมา คุณสมบัติที่โดดเด่นที่สุดในแง่ของโอเพนซอร์สคือ Build Adapters API ซึ่งช่วยให้การผสานรวมกับผู้ให้บริการโฮสติ้งที่มีข้อกำหนดเฉพาะทำได้ง่ายขึ้น แม้ว่า Vercel จะรองรับการปรับใช้ด้วยตนเองมาตั้งแต่ปี พ.ศ. 2559 แล้วก็ตาม[ 31 ] [ 32 ]

สไตล์และคุณสมบัติ

Next.js รองรับการจัดสไตล์ด้วยCSSรวมถึงScssและSass ที่คอมไพล์ล่วงหน้า CSS -in-JSและJSX ที่มีสไตล์[ 13 ]นอกจากนี้ยังสร้างขึ้นด้วย การสนับสนุน TypeScriptและการรวมกลุ่มอัจฉริยะ[ 33 ]ตัวแปลงโค้ดโอเพนซอร์สSWC ถูกใช้เพื่อแปลงและคอมไพล์โค้ดเป็น JavaScript ที่เบราว์เซอร์สามารถใช้งานได้[ 34 ] Webpackซึ่งเป็นเครื่องมือโอเพนซอร์สอีกตัวหนึ่ง ถูกใช้เพื่อรวมโมดูลในภายหลัง อย่างไรก็ตาม ปัจจุบันกำลังถูกแทนที่ด้วย TurboPack [ 35 ]เครื่องมือทั้งหมดเหล่านี้ถูกใช้งานร่วมกับnpmในเทอร์มินัล[ 14 ]

คุณสมบัติหลักของ Next.js คือการใช้การเรนเดอร์ฝั่งเซิร์ฟเวอร์เพื่อลดภาระของเว็บเบราว์เซอร์และเพิ่มความปลอดภัย สามารถทำได้กับส่วนใดส่วนหนึ่งของแอปพลิเคชันหรือทั้งระบบ ทำให้สามารถเลือกหน้าเว็บที่มีเนื้อหามากเป็นพิเศษสำหรับการเรนเดอร์ฝั่งเซิร์ฟเวอร์ได้[ 10 ]นอกจากนี้ยังสามารถทำได้เฉพาะกับผู้เข้าชมครั้งแรก เพื่อลดภาระของเว็บเบราว์เซอร์ที่ยังไม่ได้ดาวน์โหลดสินทรัพย์ใดๆ ของเว็บไซต์[ 11 ]คุณสมบัติ "hot reloading" จะตรวจจับการเปลี่ยนแปลงเมื่อเกิดขึ้นและเรนเดอร์หน้าเว็บที่เหมาะสมใหม่ เพื่อให้เซิร์ฟเวอร์ไม่ต้องรีสตาร์ท ซึ่งทำให้การเปลี่ยนแปลงที่ทำกับโค้ดแอปพลิเคชันสะท้อนให้เห็นในเว็บเบราว์เซอร์ทันที แม้ว่าบางเบราว์เซอร์อาจต้องรีเฟรชหน้าเว็บก็ตาม[ 10 ] ซอฟต์แวร์ใช้การกำหนดเส้นทางตามหน้าเพื่อความสะดวกของนักพัฒนาและรวมถึงการสนับสนุนการกำหนดเส้นทางแบบไดนามิก คุณสมบัติอื่นๆ ได้แก่ การแทนที่โมดูลแบบ hot-module เพื่อให้สามารถแทนที่โมดูลได้แบบเรียลไทม์ การแบ่งโค้ดอัตโนมัติ ซึ่งจะรวมเฉพาะโค้ดที่จำเป็นในการโหลดหน้าเว็บ และการดึงข้อมูลหน้าเว็บล่วงหน้าเพื่อลดเวลาในการโหลด[ 10 ]

Next.js ยังรองรับการสร้างเว็บไซต์แบบคงที่แบบเพิ่มทีละน้อย[ 36 ]และการสร้างเว็บไซต์แบบคงที่ - โดยปกติแล้วเว็บไซต์เวอร์ชันที่คอมไพล์แล้วจะถูกสร้างขึ้นในระหว่างการสร้างและบันทึกไว้ในโฟลเดอร์ .next เมื่อผู้ใช้ร้องขอ เวอร์ชันที่สร้างไว้ล่วงหน้าซึ่งเป็นหน้า HTML แบบคงที่จะถูกแคชและส่งไปยังผู้ใช้ ทำให้เวลาในการโหลดเร็วมาก แต่ไม่เหมาะสำหรับทุกเว็บไซต์ โดยเฉพาะเว็บไซต์แบบโต้ตอบที่เปลี่ยนแปลงบ่อยและใช้ข้อมูลป้อนเข้าจากผู้ใช้จำนวนมาก

ความปลอดภัย

ในเดือนพฤศจิกายน 2025 นักวิจัยด้านความปลอดภัย Lachlan Davidson ได้รายงานช่องโหว่ให้กับทีม React ซึ่งอนุญาตให้มีการเรียกใช้โค้ดจากระยะไกลโดยไม่ได้รับการตรวจสอบสิทธิ์ผ่านข้อบกพร่องในโปรโตคอลการดีซีเรียไลเซชันของ React Server Component การแก้ไขได้รับการเผยแพร่ไปยัง npm ในวันที่ 3 ธันวาคม และเปิดเผยต่อสาธารณะในชื่อ CVE-2025-55182 ("React2Shell") ซึ่งได้รับคะแนน CVSS 10.0 [ 37 ] [ 38 ] Next.js เวอร์ชัน 15.x และ 16.x ได้รับผลกระทบจาก CVE นี้ ซึ่งติดตามแยกต่างหากในชื่อ CVE-2025-66478 เนื่องจากการกำหนดค่า App Router เริ่มต้นมีความเสี่ยง ทีมข่าวกรองภัยคุกคามของ Amazon สังเกตเห็นความพยายามในการโจมตีโดยกลุ่มภัยคุกคามหลายกลุ่มที่เชื่อมโยงกับรัฐบาลจีนภายในไม่กี่ชั่วโมงหลังจากการเปิดเผยต่อสาธารณะ[ 39 ]ในวันที่ 5 ธันวาคมCISAได้เพิ่มช่องโหว่นี้ลงในแคตตาล็อก Known Exploited Vulnerabilities (KEV) [ 40 ]เมื่อวันที่ 6 ธันวาคม พ.ศ. 2568 Vercel ได้ปล่อยแพ็กเกจ npm fix-react2shell-next สำหรับการอัปเดตเป็นเวอร์ชันที่มีการแก้ไขด้านความปลอดภัย[ 41 ]

ดูเพิ่มเติม

  • เว็บไซต์อย่างเป็นทางการแก้ไขข้อมูลนี้ได้ที่วิกิดาต้า
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Next.js&oldid=1359320185 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ เน็กซ์.เจเอส

Next.js เป็น เฟรมเวิร์กการพัฒนาเว็บ แบบฟูลสแต็ก โอเพน ซอร์ส ที่สร้างโดยบริษัทเอกชน Vercel ซึ่งให้บริการแอปพลิเคชันเว็บที่ใช้ React พร้อมด้วย การเรนเดอร์ฝั่งเซิร์ฟเวอร์ และ...

พื้นหลัง

Next.js เป็น เฟรมเวิร์ก React ที่ช่วยให้มีคุณสมบัติพิเศษเพิ่มเติมหลายอย่าง รวมถึง การเรนเดอร์ฝั่งเซิร์ฟเวอร์ และ การเรนเดอร์แบบคงที่ [ 9 ] React เป็น ไลบรารี JavaScript ที่ใช้กันทั่วไปในการสร้างเว็บแอปพลิเคชันที่แสดงผลในเบราว์เซอร์ของไคลเอนต์ด้วย JavaScript [...

ประวัติการพัฒนา

Next.js เปิดตัวครั้งแรกในฐานะโครงการโอเพนซอร์สบน GitHub เมื่อวันที่ 25 ตุลาคม 2016 [ 3 ] เดิมทีได้รับการพัฒนาโดยยึดหลักการ 6 ประการ ได้แก่ ฟังก์ชันการทำงานแบบสำเร็จรูปที่ไม่ต้องตั้งค่า JavaScript ทุกที่ ฟังก์ชันทั้งหมดเขียนด้วย JavaScript...

สไตล์และคุณสมบัติ

Next.js รองรับการจัดสไตล์ด้วย CSS รวมถึง Scss และ Sass ที่คอมไพล์ล่วงหน้า CSS -in-JS และJSX ที่มีสไตล์ [ 13 ] นอกจากนี้ยังสร้างขึ้นด้วย การสนับสนุน TypeScript และการรวมกลุ่มอัจฉริยะ [ 33 ] ตัวแปลงโค้ด โอเพนซอร์สSWC ถูกใช้เพื่อแปลงและคอมไพล์โค้ดเป็น JavaScript...