почему я пропускаю вспомогательную ошибку: раздел с кодом, который работал раньше - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь обработать запрос на получение формы с помощью Express, мой код выглядит следующим образом:

app.get('/newsletter', function(req, res){
res.render('newsletter');
});

Я получаю эту ошибку при выполнении запроса:

> Error: Missing helper: 'section'
>     at new Exception (G:\express\node_modules\handlebars\dist\cjs\handlebars\exception.js:13:41)
>     at Object.<anonymous> (G:\express\node_modules\handlebars\dist\cjs\handlebars\base.js:57:13)
>     at Object.eval (eval at createFunctionContext (G:\express\node_modules\handlebars\dist\cjs\handlebars\compiler\javascript-compiler.js:189:23),
> <anonymous>:18:213)
>     at G:\express\node_modules\handlebars\dist\cjs\handlebars\runtime.js:86:31
>     at G:\express\node_modules\handlebars\dist\cjs\handlebars\compiler\compiler.js:465:21
>     at ExpressHandlebars._renderTemplate (G:\express\node_modules\express3-handlebars\lib\express-handlebars.js:339:22)
>     at ExpressHandlebars.renderTemplate (G:\express\node_modules\express3-handlebars\lib\express-handlebars.js:196:18)
>     at fn (G:\express\node_modules\async\lib\async.js:582:34)
>     at Immediate.<anonymous> (G:\express\node_modules\async\lib\async.js:498:34)
>     at runCallback (timers.js:789:20)

1 Ответ

0 голосов
/ 16 октября 2018

понял это ...... мне нужно было добавить объект помощников в мою конфигурацию руля ... вот дополнения, которые исправили мой код;

const handlebars = require('express3-handlebars').create(
{defaultLayout:'main',
helpers:{
    section:function(name, options){
        if(!this._sections){this._sections = {}};
        this._sections[name] = options.fn(this);
        return null;
    };
}});
...