У меня есть пользовательская вспомогательная функция руля, чтобы проверить, равны ли два значения. Я вкладываю теги моего вспомогательного блока в представление, но данные не доступны во втором вложенном вспомогательном блоке
Я могу видеть данные, если я console.log содержимого внутри вспомогательной функции, но он не передаетсяа после этого.
Я использую Koa.js с рулем в качестве движка шаблонов
Моя вспомогательная функция ниже называется "равно"
app.use(views(`${__dirname}/views`, {
extension: 'handlebars',
map: { handlebars: 'handlebars' },
options: {
helpers: {
//this is my custom helper function
equals: (a, b, opts) => {
if (a === b) return opts.fn(this)
return opts.inverse(this)
}
},
partials: {
header: './partials/header',
footer: './partials/footer',
banner: './partials/banner',
},
}
}))
{{#equals data.user.role 'customer'}}
<div>
//this data is not being shown at all
{{#equals data.job.status "awaiting-quote"}}Awaiting quote{{/equals}}
{{#equals data.job.status "time-slot-allocated"}}Awaiting appointment{{/equals}}
{{#equals data.job.status "job-completed"}}Complete{{/equals}}
//this does work
//so it appears that data.job.status is undefined in the nested equals
{{#equals "test" "test"}}this works{{/equals}}
</div>
{{/equals}}