无法使用OS X 10.11.4,Node.js获取res.render。 Express3车把

我对这一切都很陌生。 我已经通过几个不同的教程,将相同的结果。 我觉得有些东西与设置不兼容,或者我发了一些东西。 以下是我相信是相关的文件。 我可以让res.send工作,但res.render不会渲染。 我甚至不能把它扔出500或404错误。 它似乎findhttp:// localhost:3000 ,虽然没有文字显示。 我正在使用OS X 10.11.4,Node.js. Express3车把。

directory: /Users/williamshaw/WebProjects/sicmobile Williams-MacBook:sicmobile williamshaw$ ls package.json resources sicmobile.js views bin node_modules public routes vendors sicmobile.js: var path = require('path'); var express = require('express'); // set up handlebars view engine var exphbs = require('express3-handlebars'); var app = express(); app.set('views', path.join(__dirname, '/views')); app.engine('handlebars', exphbs({defaultLayout: 'main'})); app.set('view engine', 'handlebars'); app.set('port', process.env.PORT || 3000); app.use(express.static(__dirname + '/public')); app.get('/', function(req, res) { res.render('home'); }); app.get('/about', function(req,res){ res.render('about'); }); // 404 catch-all handler (middleware) app.use(function(req, res, next){ res.status(404); res.render('404'); }); // 500 error handler (middleware) app.use(function(err, req, res, next){ console.error(err.stack); res.status(500); res.render('500'); }); app.listen(app.get('port'), function(){ console.log( 'Express started on http://localhost:' + app.get('port') + '; press Ctrl-C to terminate.' ); }); main.handlebars: <!doctype html> <html> <head> <title>The Company>/title> </head> <body> <div style='position: absolute; top: 0; height: 40px;'> <h3> This is the header</h3> </div> </div style='margin-top: 60px;'> {{{ body }}} </div> <div style='position: absolute; bottom: 0;height:40px;'> </div> </body> </html> home.handlebars: <!doctype html> <h1>Welcome to Shaw Investment Company</h1> about.handlebars: <h1>This is the About page.</h1> 400.handlebars: <h1>404 - Not Found</h1> 500.handlebars: <h1>500 - Server Error</h1> 

您在main.handlebarsinput错误。

 <title>The Company</title> 

如果您在Developer Console中检查页面元素,则会在标题标签本身中看到数据。

希望能帮助到你。