我在使路线正确导航方面遇到了很多麻烦。
这是我的代码:
在express.js
中app.set('views', config.root + '/app/views')
app.set('view engine', 'jade')
在routes.js中
module.exports = function (app) {
// home route
app.get('/', home.index)
}
即使我认为我正确设置了视图,我仍然会收到错误,说明未定义主页。任何关于错误可能是什么的想法。
如果有帮助,我的视图的文件结构在app / views下,我的配置文件是config / express.js和config / routes.js
答案 0 :(得分:1)
在您的routes.js中,您尚未定义主页,因此您肯定会收到未定义的错误。视图与请求处理程序无关。 您将在请求处理程序中使用res.render来呈现视图。请查看express.js指南以开始使用。
你想这样做吗?
module.exports = function (app) {
// home route
app.get('/', function(req, res){
res.render('home');
});
}
如果您的请求处理程序位于单独的模块中,您可以执行以下操作: 如果你的家庭请求处理程序是home.js在routes.js的相同路径中,你可以执行以下操作。
您的route.js文件
var home = require('./home');//path to your home request handler module
module.exports = function (app) {
// home route
app.get('/', home.index)
}
您的home.js文件
exports.index = function(req, res){
res.render('home/index');
}
您希望在/ app / views / home文件夹中有index.jade视图文件。