Express 4.0在"/views"中查找视图失败目录中
Express 4.0 Failed to Look up view in "/views" directory
我正在为NodeJS使用Express 4.0和Express3-handlebars库。
下面是配置
app.set('views', path.join(__dirname, 'views/'));
app.engine('hbs', hbs({defaultLayout: 'main', extname: '.hbs'}));
app.set('view engine', 'hbs');
contact.html在views目录
app.get('/', function(req, res) {
res.render("contact");
});
这是我得到的错误:
Error: Failed to lookup view "contact" in views directory "/Users/max23/Desktop/Node/views/"
我花了一个多小时试图修理它,但无济于事。代码有什么问题?
您正在使用Handlebars模板库,因此您的视图应该具有.hbs扩展名,而不是.html。将contact.html更改为contact。对你所有的模板都这么做。同时,修改
这一行app.engine('hbs', hbs({defaultLayout: 'main.hbs', extname: '.hbs'}));
当您使用hbs作为视图系统时,您应该为视图文件使用.hbs扩展名。它无法查找视图,因为它是HTML,它正在查找contact.hbs
我个人对车把库没有太多的经验,但我建议你把contact.html扩展名改为。hbs,然后再试一次
设置视图路径有问题。尝试更改
行app.set('views', path.join(__dirname, 'views/'));
app.set('views', path.join(__dirname, '/views'));
如果没有解决,显示您的文件夹结构
相关文章:
- 正在全局范围中查找JavaScript函数
- Javascript(Angular)从一个对象数组到第二个数组查找值
- 铬:“;未捕获的语法错误:意外的标记:"
- 在不使用jquery的情况下查找页面中的所有锚点并附加函数
- es6 相当于下划线查找位置
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- 在DOM中查找一个模式并替换它's的内容使用jquery
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- 如何使用jquery迭代具有相同属性的html元素并查找onclick事件
- "可以't查找变量:cordova”;
- "可以't查找变量:window“;在suds.js中
- Node.js服务器问题-已添加“/"在浏览器中查找文件时
- “间歇”;jqLite不支持通过选择器查找元素"当使用RequireJS加载AngularJS时
- 用“”查找字符串//"并从“//"直到最后
- 得到"符号查找错误”;当从C++(Node.js Addon)调用C库时
- "随机查找“;序列生成器
- Javascript正则表达式查找不以“”开头的单词;我的:"
- 正则表达式,查找不以="开头的URL's
- "可以't查找变量“t”;Rails 3.1和Coffeescription出现错误