我一直在试图制作一个网站使用快递和玉器。我已经写了好几页和路线,到现在为止工作得很好。我不断收到以下错误:ReferenceError:玉没有定义
ReferenceError: jade is not defined
at eval (eval at <anonymous> ([...]project/node_modules/jade/lib/jade.js:165:30), <anonymous>:2:1)
at Object.exports.render ([...]project/node_modules/jade/lib/jade.js:211:10)
at Object.exports.renderFile ([...]project/node_modules/jade/lib/jade.js:247:18)
at View.exports.renderFile [as engine] ([...]project/node_modules/jade/lib/jade.js:232:21)
at View.render ([...]project/node_modules/express/lib/view.js:76:8)
at Function.app.render ([...]project/node_modules/express/lib/application.js:506:10)
at ServerResponse.res.render (/media/ruben/5CCAD622CAD5F7EA/Users/ruben/Google Drev/developer/workspace/kwasi/project/node_modules/express/lib/response.js:759:7)
at exports.home ([...]project/routes/cases.js:7:7)
at callbacks ([...]project/node_modules/express/lib/router/index.js:164:37)
at clientChosen ([...]project/app.js:81:5)
当我清楚我的缓存和Cookie,我可以去我所有的网页,但每当我登录,即设置一个会话变量与登录的用户,我收到上面的错误。
我不确定我可以包含哪些其他信息。在该堆栈跟踪参考cases.js线仅仅是
res.render("home.jade", {})
编辑:
在我app.js我指定玉作为渲染引擎有以下:
app.configure(function() {
app.set("views", __dirname + "/views"); // Set the views folder
app.set("view engine", "jade"); // Set the rendering engine
...
而我的看法是这样的:
extend layout
block title
title Forside - #{company}
block content
h3 Sager
- for (var i = 0; i < cases.length; i++) {
.casethumb
p #{cases[i].label}
- }
编辑2:右键 。我能够确定的是,它可能与我的定制中间件有关。我有这两个功能
// Makes sure that the user is logged in
loggedIn = function(req, res, next){
if (req.session.user) {
next()
}
else {
if (req.url != "/login") {
req.flash('info', "Før du kan bruge systemet, skal du logge ind")
}
res.redirect("/login")
}
}
// Makes sure that the user has chosen a client to work on
clientChosen = function(req, res, next) {
if (req.session.selectedClient) {
next()
}
else {
res.redirect("/chooseClient")
}
}
我使用它们像这样:
app.get("/", loggedIn, clientChosen, cases.home)
当我从我的路线删除功能这样
app.get("/", cases.home)
问题就没有了,但我确实需要我的中间件的功能。我将如何去解决这个问题?
我已经编辑我的问题,包括我的玉配置和问题 – Eldamir
看起来这可能需要做的视图用会话变量的存储方式。我会进一步调查 – Eldamir
你可以粘贴'cases.home()'代码。你的其他两个男/女对我看起来很好。 – vmx