Я починаю з NodeJS та Express 4, і я трохи розгублений. Я читав веб-сайт Express, але не бачу, коли використовувати обробник маршруту або коли його використовувати express.Router
.
Як я бачив, якщо я хочу показати, наприклад, сторінку чи щось, коли користувач потрапляє, /show
наприклад, я повинен використовувати:
var express = require('express')
var app = express()
app.get("/show", someFunction)
На початку я вважав, що це старе (для Експресу 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.Router
Router
Router
не.listen()
для запитів самостійно. Це корисно для розділення вашої програми на кілька модулів - створенняRouter
в кожному, щоapp
може,require()
і.use()
як проміжне програмне забезпечення.