2017-10-24 4 views
0

私はhtmlをエンジンとして新しいエクスプレスプロジェクトを作成しています(hbsが必要です)。ここでビューエンジンがコールバックの機能のエラーを出すときのExpressレンダリングhtmlが必要です

は、エンジンのセットアップです:

// view engine setup 
app.set('views', path.join(__dirname, 'views')); 
app.set('view engine', 'hbs'); 
app.engine('html', require('hbs').renderFile); 
app.use(express.static(path.join(__dirname, '/views'))); 

私はエラーの取得しています:

エラーコールバック関数をここで

を必要とそれのスクリーンショットです:

enter image description here

そして、ここに私の完全なapp.jsスクリプトです:

var express = require('express'); 
var path = require('path'); 
var favicon = require('serve-favicon'); 
var logger = require('morgan'); 
var cookieParser = require('cookie-parser'); 
var bodyParser = require('body-parser'); 
var nodemon = require('nodemon'); 
var consolidate = require('consolidate'); 
var index = require('./routes/index'); 
var users = require('./routes/users'); 

var app = express(); 

// view engine setup 
app.set('views', path.join(__dirname, 'views')); 
app.set('view engine', 'hbs'); 
app.engine('html', require('hbs').renderFile); 
app.use(express.static(path.join(__dirname, '/views'))); 
// uncomment after placing your favicon in /public 
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico'))); 
app.use(logger('dev')); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ extended: false })); 
app.use(cookieParser()); 
app.use(express.static(path.join(__dirname, 'public'))); 

app.use('/', index); 
app.use('/users', users); 

// catch 404 and forward to error handler 
app.use(function(req, res, next) { 
    var err = new Error('Not Found'); 
    err.status = 404; 
    next(err); 
}); 

// error handler 
app.use(function(err, req, res, next) { 
    // set locals, only providing error in development 
    res.locals.message = err.message; 
    res.locals.error = req.app.get('env') === 'development' ? err : {}; 

    // render the error page 
    res.status(err.status || 500); 
    res.render('error'); 
}); 

module.exports = app; 

そして、ここでは私のNPMバージョンです:

5.5.1

答えて

1

The documentationapp.engine('html', require('hbs').__express);

を使用することを言いますが
関連する問題