【问题标题】:Routing in Express and MEAN stackExpress 和 MEAN 堆栈中的路由
【发布时间】:2016-03-08 19:50:56
【问题描述】:

我正在关注在 MEAN 中实施的在线教程。一切看起来都很棒。除非涉及到路线。我了解路由需要位于 javascript 文件(js 扩展名)中。一个小的网站没关系。但随着请求数量的增加,我想将它们放在单独的文件中。我在 SOF 中查找了如何在 Javascript 中包含文件。这是不平凡的。有没有人遇到过这个问题?有人可以评论吗?

谢谢

【问题讨论】:

    标签: node.js express mean-stack


    【解决方案1】:

    您可以通过使用express.Router() 来使用Router Middleware。这允许您将您的路线分成不同的文件。顺便说一句,中间件非常强大,值得学习,它是 Express 的重要组成部分。

    假设您有一个包含/users 部分的应用。您可以创建一个名为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');
    });
    

    【讨论】:

    • 谢谢。你是最棒的!
    • @user2654788 np,如果这确实是答案,请将其标记为答案,以便将来访问该问题的人知道这是回答您的问题的原因。
    猜你喜欢
    • 2014-05-09
    • 2013-11-03
    • 2015-01-21
    • 2015-04-12
    • 1970-01-01
    • 1970-01-01
    • 2013-12-24
    • 2017-11-09
    • 1970-01-01
    相关资源
    最近更新 更多