为什么我不能调用在 node express 中创建的任何页面?

Why can't I call any page created in node express?

我正在为 NodeJS 使用 ExpressJS Web 框架。

不知道为什么创建新页面调用时出现404错误信息

我的目录结构:

| my-application
    | src
        | routes
            | index.js
            | single.js
        | views
            | index.pug
            | single.pug
        | ...

routes 文件夹中的代码 single.js

var express = require('express');
var router = express.Router();

/* GET single page. */
router.get('/single', function(req, res, next) {
  res.render('single', { title: 'Blog single' });
});

module.exports = router;

app.js中的代码:

// ...
var index = require('./src/routes/index');
var single = require('./src/routes/single');

app.use('/', index);
app.use('/single', single);
// ...

这行代码:

app.use('/single', single);

single 路由器一起为 /single/single 创建路由处理程序,而不仅仅是 /single。它注册一个路由器来处理所有 /single 路由,然后路由器本身注册 /single/single/single 创建处理程序。

您可以将 router.get() 更改为仅处理 / 而不是 /single。或者您可以将 app.use() 更改为没有路径。您可能想更换路由器。