การกำหนดเส้นทางเป็นส่วนสำคัญในการสร้างแอปพลิเคชันหน้าเดียว (SPA) ด้วย React การใช้แท็กเส้นทางแทนแท็ก Anchor (‹a›‹/a›) สามารถเพิ่มประสิทธิภาพเว็บไซต์ได้อย่างมาก เนื่องจาก Routes จะแสดงเฉพาะส่วนประกอบที่จำเป็นเท่านั้น ซึ่งต่างจากการใช้แท็ก Anchor ที่โหลดทั้งหน้าซ้ำ ในบทช่วยสอนนี้ เราจะสำรวจวิธีตั้งค่าการกำหนดเส้นทางในแอปพลิเคชัน React โดยใช้ React Router React Router เป็นไลบรารียอดนิยมที่ให้การกำหนดเส้นทางแบบประกาศสำหรับแอปพลิเคชัน React
สารบัญ
∘ ข้อกำหนดเบื้องต้น
· การติดตั้ง
· การตั้งค่าเส้นทาง
· การสร้างส่วนประกอบเส้นทาง
· การเชื่อมโยงไปยังเส้นทาง
· การทดสอบ การกำหนดเส้นทาง
· บทสรุป
ข้อกำหนดเบื้องต้น
ก่อนที่จะเจาะลึกการกำหนดเส้นทาง React เราต้องแน่ใจว่าเราได้ตั้งค่าบางสิ่งไว้แล้ว นี่คือสิ่งที่คุณต้องการ:
- ติดตั้ง Node.js และ npm บนเครื่องของคุณแล้ว หากต้องการตรวจสอบว่าคุณติดตั้ง Node.ja ไว้ในเครื่องหรือไม่ ให้เปิดเทอร์มินัลแล้วใช้คำสั่งอย่างใดอย่างหนึ่งต่อไปนี้
node -v npm -v
หากไม่ได้ติดตั้ง Node.js หรือ npm ให้ไปที่เว็บไซต์อย่างเป็นทางการของ Node.js (https://nodejs.org) และทำตามคำแนะนำเพื่อดาวน์โหลดและติดตั้งเวอร์ชันล่าสุดที่เหมาะกับระบบปฏิบัติการของคุณ
2. ความเข้าใจพื้นฐานเกี่ยวกับ React และส่วนประกอบต่างๆ จะมีประโยชน์
3. โครงการตอบโต้ หากคุณไม่มีโปรเจ็กต์ที่มีอยู่ คุณสามารถสร้างโปรเจ็กต์ใหม่ได้โดยใช้ create-react-app ไปที่ไดเร็กทอรีที่คุณต้องการซึ่งโปรเจ็กต์จะถูกจัดเก็บและในเทอร์มินัล VSCode ให้ป้อน:
npx create-react-app my-app
การติดตั้ง
ก่อนอื่น เราต้องติดตั้ง React Router Dom ในโปรเจ็กต์ที่สร้างขึ้นใหม่ของเรา ทำตามขั้นตอนด้านล่าง:
1. นำทางไปยังไดเร็กทอรีโครงการของคุณ
2. เปิดเทอร์มินัลของคุณใน VSCode เพื่อติดตั้ง React Router:
npm install react-router-dom
คำสั่งนี้จะติดตั้งแพ็คเกจ react-router-dom
ซึ่งมีส่วนประกอบที่จำเป็นสำหรับการกำหนดเส้นทางในแอปพลิเคชัน React
3. รอให้การติดตั้งเสร็จสิ้น npm จะดาวน์โหลดแพ็คเกจและการขึ้นต่อกันของแพ็คเกจ และจะถูกจัดเก็บไว้ในไดเร็กทอรี node_modules
ภายในโปรเจ็กต์ของคุณ คุณยังสามารถดูการพึ่งพาได้ใน package.json ของคุณ
4. หลังจากการติดตั้งเสร็จสิ้น คุณก็พร้อมที่จะเริ่มใช้ React Router ในแอปพลิเคชัน React ของคุณ
เมื่อทำตามขั้นตอนเหล่านี้ ตอนนี้คุณควรติดตั้ง React Router แล้วและพร้อมที่จะใช้ในโปรเจ็กต์ของคุณ คุณสามารถดำเนินการขั้นตอนถัดไปในบทช่วยสอนเพื่อตั้งค่าเส้นทางและใช้ฟังก์ชันการกำหนดเส้นทางในส่วนประกอบ React ของคุณ
การตั้งค่าเส้นทาง
ในโปรเจ็กต์ React ของคุณ ให้เปิด App.js ของคุณและนำเข้าการอ้างอิงที่จำเป็น:
import React from 'react'; import { BrowserRouter as Router, Route, Routes, Link} from "react-router-dom";
ถัดไป กำหนดเส้นทางของคุณ:
function App() { return ( <Router> <Routes> <Route path="/" element={<Home />} /> <Route path="/about" element={<About />} /> <Route path="/contact" element={<Contact />} /> <Route path="*" element={<NotFound />} /> </Routes> </Router> ); }
ในโค้ดด้านบน เราล้อมเส้นทางของเราด้วยส่วนประกอบ Router
คอมโพเนนต์ Routes
ช่วยให้มั่นใจได้ว่าจะมีการแสดงผลเส้นทางเดียวเท่านั้นในแต่ละครั้ง เรากำหนดเส้นทางแต่ละเส้นทางโดยใช้องค์ประกอบ Route
โดยระบุ path
และองค์ประกอบที่เกี่ยวข้องในการแสดงผล
การสร้างส่วนประกอบเส้นทาง
มาสร้างส่วนประกอบสำหรับเส้นทางของเรากันดีกว่า ในไฟล์แยกกัน ให้สร้างส่วนประกอบต่อไปนี้: Home.js
, About.js
, Contact.js
และ NotFound.js
แต่ละองค์ประกอบควรส่งออกองค์ประกอบการทำงาน:
// Home.js import React from 'react'; function Home() { return <h1>Welcome to the Home Page!</h1>; } export default Home; // About.js import React from 'react'; function About() { return <h1>About Us</h1>; } export default About; // Contact.js import React from 'react'; function Contact() { return <h1>Contact Us</h1>; } export default Contact; // NotFound.js import React from 'react'; function NotFound() { return <h1>Page Not Found</h1>; } export default NotFound;
การเชื่อมโยงไปยังเส้นทาง
เพื่อนำทางระหว่างเส้นทาง เราจะใช้ส่วนประกอบ Link
ที่ได้รับจาก React Router เปิดไฟล์ App.js
ของคุณและนำเข้าส่วนประกอบ Link
:
import { BrowserRouter as Router, Switch, Route, Link } from 'react-router-dom';
อย่าลืมนำเข้าเพจของเราด้วย:
import Home from "./pages/home"; import About from "./pages/about"; import Contact from "./pages/contact"; import NotFound from "./pages/not_found";
อัปเดตองค์ประกอบ App
เพื่อรวมลิงก์การนำทาง:
import React from "react"; import { BrowserRouter as Router, Route, Routes, Link } from "react-router-dom"; import Home from "./pages/home"; import About from "./pages/about"; import Contact from "./pages/contact"; import NotFound from "./pages/not_found"; function App() { return ( <Router> <nav> <ul> <li> <Link to="/">Home</Link> </li> <li> <Link to="/about">About</Link> </li> <li> <Link to="/contact">Contact</Link> </li> </ul> </nav> <Routes> <Route path="/" element={<Home />} /> <Route path="/about" element={<About />} /> <Route path="/contact" element={<Contact />} /> <Route path="*" element={<NotFound />} /> </Routes> </Router> ); } export default App;
ในโค้ดด้านบน เราได้เพิ่มองค์ประกอบ nav
พร้อมด้วยองค์ประกอบ ul
และ li
สำหรับลิงก์การนำทาง องค์ประกอบ Link
ช่วยให้เราสร้างลิงก์ที่คลิกได้ซึ่งนำทางไปยังเส้นทางที่ระบุ
การทดสอบการกำหนดเส้นทาง
ตอนนี้เราได้ตั้งค่าเส้นทางและสร้างส่วนประกอบแล้ว มาทดสอบเส้นทางของเราในเบราว์เซอร์กันดีกว่า มาเริ่มเซิร์ฟเวอร์การพัฒนาของเราด้วยการรัน npm start
ในไดเร็กทอรีโปรเจ็กต์ของเรา
เปิดเบราว์เซอร์แล้วไปที่ http://localhost:3000
เราควรเห็นคอมโพเนนต์ Home แสดงผล
ตอนนี้เราสามารถคลิกลิงก์ในการนำทางเพื่อนำทางไปยังเส้นทางของเราได้ ตรวจสอบว่ามีการแสดงส่วนประกอบที่ถูกต้องบนหน้าต่างๆ
บทสรุป
ในบทช่วยสอนนี้ เราได้เรียนรู้วิธีตั้งค่าการกำหนดเส้นทางในแอปพลิเคชัน React โดยใช้ React Router เราได้สำรวจวิธีการกำหนดเส้นทาง สร้างส่วนประกอบของเส้นทาง ลิงก์ไปยังเส้นทาง และนำทางระหว่างเส้นทางเหล่านั้น ด้วย React Router คุณสามารถสร้างแอปพลิเคชันหน้าเดียวแบบไดนามิกและโต้ตอบได้อย่างง่ายดาย
โปรดอ่านเอกสารประกอบของ React Router เพื่อดูคุณสมบัติและตัวเลือกการกำหนดเส้นทางขั้นสูงเพิ่มเติม ที่นี่
นี่เป็นการสรุปบทช่วยสอนของเราเกี่ยวกับการใช้การกำหนดเส้นทางด้วย React ขอให้มีความสุขในการเขียนโค้ด!