我是Express和Jade的新手,我在渲染视图时遇到以下错误。
TypeError:对象#的属性'引擎'不是函数
我的配置如下:
var express = require('express');
var http = require('http');
var app = express();
app.set("views", __dirname + "/../views");
app.set("view engine", "jade");
应用程序在以下呈现功能上崩溃:
app.get("/", function(request, response) {
response.render("game.jade", { message: "this is a variable" });
});
视图存在于views目录中,只包含一些简单的jade测试html。
知道如何解决这个问题吗?
答案 0 :(得分:1)
如果您在jade.js
中的某个地方有一个名为jade/index.js
(或$NODE_PATH
)的文件正在加载(并返回一个对象而不是一个函数)之前,我可以重现该问题实际的Jade包(和/或你还没有安装它)。
您可以找到这样加载的文件:
$ node -e 'console.log(require.resolve("jade"))'