[英]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.