繁体   English   中英

为什么Express渲染res.render中未指定的页面

[英]Why is Express rendering a page other than specified in res.render

我正在尝试渲染一个名为compare.ejs的ejs页面,但是当我导航到希望呈现比较的页面时,另一个页面已经渲染。 我在这里想念什么?

在app.js中:

var compare = require('./routes/compare')(nav);
app.use('/compare', compare);

在routes / compare.js中

var compare = express.Router();

var router = function (nav) {
    compare.route('/')
        .get(function(req,res){
            res.render('compare',
                      {
                nav: nav
            })
    });
return compare
};
module.exports = router;

但是,当我导航到/ compare时,将呈现另一个具有其他名称的页面。

可能需要是router.route()而不是compare.route()

//编辑后

如果较早的路由与相同的路由匹配,通常会发生这种情况。 您还有其他类似的路线吗?

compare之前,您可能有另一条与相同位置匹配的路线。 请记住,路由是middleware因此,您必须谨慎使用顺序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM