Маршруты в nodeJs + экспресс - PullRequest
0 голосов
/ 06 июня 2018

В приложении nodejs + express мы можем иметь разные файлы маршрутов и включать их в один файл.Как показано ниже.

в hotel.routes.js У меня есть несколько маршрутов, таких как

    const express = require("express");
    const hotelsCtrl = require("../controllers/hotels.controller");
    const router = express.Router();

    router
        .route("/")
        .get(hotelsCtrl.getAllHotels);

    module.exports = router;

В review.routes.js У меня есть несколько маршрутов, таких как

        const express = require("express");
        const reviewsCtrl = require("../controllers/reviews.controller");
        const router = express.Router();

        router
            .route("/")
            .get(reviewsCtrl.getAllreviews);

        module.exports = router;

Теперь я хотел включить в файл индекса как hotel.routes.js, так и review.routes.js, и когда маршрут "/ hotel", он должен идтиhotel.routes.js и когда маршрут "/ review", он должен перейти на review.routes.js

Может кто-нибудь, пожалуйста, помогите исправить это.Заранее спасибо.

1 Ответ

0 голосов
/ 06 июня 2018

Вы можете сделать это:

 app.use('/hotel', require('./hotel.routes.js'));
 app.use('/review', require('./review.routes.js'));

Это помещает экспортированный маршрутизатор hotel.routes.js на /hotel, а экспортируемый маршрутизатор review.routes.js на /review.

Похоже,Вы немного усложнили, используя три файла для настройки одного /hotel маршрута.


Вы также можете просто сделать:

const hotelsController = require("../controllers/hotels.controller");

app.get('/hotel', hotelsController.getAllHotels);

Там действительнонет необходимости в отдельном файле hotel.routes.js.


В качестве альтернативы вы можете поместить /hotel в hotel.routes.js файл следующим образом:

const hotelsCtrl = require("../controllers/hotels.controller");
const router = require("express").Router();

router.get('/hotel', hotelsCtrl.getAllHotels);

module.exports = router;

Итогда все, что вам нужно сделать в index.js, это:

app.use(require('./hotel.routes.js'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...