ฉันเริ่มต้นด้วย NodeJS และ Express 4 และฉันสับสนเล็กน้อย ฉันได้อ่านเว็บไซต์ Express แต่ไม่สามารถมองเห็นได้เมื่อexpress.Routerใช้ตัวจัดการเส้นทางหรือเมื่อใช้
อย่างที่ฉันเห็นถ้าฉันต้องการที่จะแสดงหน้าหรือบางสิ่งบางอย่างเมื่อผู้ใช้ฮิต /showเช่นฉันควรใช้:
var express = require('express')
var app = express()
app.get("/show", someFunction)
ในตอนแรกฉันคิดว่านี่เก่า (สำหรับ Express 3) ใช่หรือไม่และนี่เป็นวิธีสำหรับ Express 4 ด้วยหรือไม่
หากนี่คือวิธีที่จะทำใน Express 4 อะไรคือสิ่งที่ express.Routerไว้สำหรับอะไร?
ฉันอ่านตัวอย่างเกือบเหมือนข้างบน แต่ใช้express.Router:
var express = require('express');
var router = express.Router();
router.get("/show", someFunction)
ดังนั้นทั้งสองตัวอย่างต่างกันอย่างไร
ฉันควรใช้อันไหนถ้าฉันต้องการทำเว็บไซต์ทดสอบง่ายๆ
app.get(..)ไวยากรณ์เป็นเพียงทางลัดเพื่อให้การทำงานexpress.routerสะดวกยิ่งขึ้น หากคุณเพิ่งเริ่มต้นไม่ต้องกังวลกับข้อมูลเฉพาะของเราเตอร์
app'sวิธีการกำหนดเส้นทางของตัวเองเช่นapp.get()มีความเพียงพอสำหรับความต้องการของคุณให้ใช้วิธีดังกล่าว Routerเป็นเพียงมีเพื่อความสะดวกในการช่วยให้คุณจัดระเบียบแอปพลิเคข้ามโมดูลหลาย จากคู่มือ " ระดับสามารถนำมาใช้ในการสร้างแบบแยกส่วนตั้งกับรถขนเส้นทาง. เช่นเป็นตัวกลางที่สมบูรณ์และระบบการกำหนดเส้นทางสำหรับเหตุนี้จึงมักจะถูกเรียกว่าเป็น 'มินิแอป'. "express.RouterRouter
Routerไม่ได้.listen()สำหรับการร้องขอในตัวเอง มันมีประโยชน์สำหรับการแยกแอปพลิเคชันของคุณออกเป็นหลายโมดูล - การสร้าง aRouterในแต่ละappกระป๋องrequire()และ.use()มิดเดิลแวร์