Express和MEAN堆栈中的路由

我正在跟随一个在线实施的在线教程。 一切看起来不错。 除了涉及到路线。 我明白,路线需要在一个JavaScript文件(js扩展名)。 没关系,一个小的网站。 但随着请求数量的增长,我想把它们放在单独的文件中。 我在SOF中查找了如何在Javascript中包含文件。 这是不平凡的。 有没有人遇到过这个问题? 任何人可以评论?

谢谢

您可以使用express.Router()来使用路由器中间件 。 这使您可以将您的路线分解成不同的文件。 在一个侧面说明,中间件是非常强大的,值得了解,它是Express的一个重要组成部分。

假设你有一个拥有/users部分的应用程序。 您可以创build一个名为users.js的单独路由文件,其中包含与您的/users资源相关的所有路由。 然后,在您的主Express应用程序正在侦听的server.js中,可以使用app.use()users.js路由分配给/users资源。

您可以拥有尽可能多的路由器,当Express决定使用哪条路由时,所有路由都会自上而下读取。

./routes/users.js

 // Create an express router var router = require('express').Router(); // Define a route for GET / router.get('/', function(req, res) { res.status(200).send('Welcome to /users'); }); // make our router available for require() statements module.exports = router; 

server.js

 var express = require('express'); var app = express(); // Users routes var users = require('./routes/users'); // Tell our app to use the Users routes defined in ./routes/users.js app.use('/users', users); app.listen(process.env.PORT || 3000, function() { console.log('listening'); });