Как сделать хелпер руля глобальным (в expressjs)
У меня есть довольно простой файл помощника руля вhelpers/handlebars.js
:
var hbs = require('express-handlebars');
hbs.registerHelper("inc", function(value, options) {
return parseInt(value) + 1;
});
Однако, как и ожидалось, я не могу сослаться на{{#inc}}
помощник, потому что я не передал его вres.render()
функция. Есть ли способ сделать все помощники в моем файле глобальными и автоматически включенными?
редактировать:
Попробовав потрясающий ответ @ 1cgonza, я получаю:
hbs.registerHelper("inc", function(value, options) {
^
TypeError: undefined is not a function
При запуске приложения. Вотapp.js
:
var engine = require('express-handlebars');
require('./helpers/handlebars.js')(engine);
app.engine('hbs', engine({defaultLayout: 'layout', extname: 'hbs'}));
app.set('view engine', 'hbs');
Есть идеи?