Как создать вспомогательную функцию Handlebar

Здравствуйте,

Я хочу создать новую вспомогательную функцию, которая будет доступна во всем приложении. Я не уверен, как создать такую функцию.

Кроме того, я попытался создать вспомогательную функцию самостоятельно, но это не работает.

Пожалуйста, ознакомьтесь с моим кодом.

Я обращаюсь к этой вспомогательной функции в файле .hbr. Пожалуйста, посмотрите прикрепленный скриншот.

Пожалуйста, дайте рекомендации.

Спасибо,
Кумар

Не мог бы кто-нибудь, пожалуйста, помочь мне с этим?

Вы видели Руководство разработчика по темам Discourse?

Обычно я смотрю на существующие темы или плагины для примеров.

РЕДАКТИРОВАНИЕ: Но если вам повезёт, @Johani даст очень вдумчивый и полезный ответ. И вам повезло!

Ваш код должен работать, но вы используете свой хелпер

{{sample}}

в шаблоне, не передавая ему никаких аргументов. Даже если вы тестируете, чтобы убедиться, что всё работает, передайте ему тестовую строку, например:

{{sample "some string"}}

Это необходимо, потому что вы используете хелпер в «сыром» шаблоне hbr. Для целей тестирования хелпер должен работать, даже если вы не передаёте ему ничего в обычных шаблонах hbs.

Если вы создаёте блок-хелпер, то он должен содержать #, и его нужно закрывать следующим образом:

{{#sample}}

{{/sample}}

Добавление ~ к вашему хелперу опционально удаляет пробельные символы между любыми HTML-тегами, которые он возвращает. Например:

{{~#sample}}

{{/sample}}

Спасибо вам большое за ответ. Сейчас всё работает отлично,

Здравствуйте,

Спасибо за ваш ответ. Вы мне очень помогаете.

Да, я уже ознакомился с документацией, существующими темами и несколькими примерами, а также создал этот тестовый проект. Однако я не уверен, как вызывать функцию-хелпер в файле Handlebars. Я пробовал разные способы, но ничего не работало. Поэтому я обратился сюда.

Спасибо,
Кумар

Ваш вопрос тоже мне помог, спасибо @Johani! В результате я собираюсь заняться рефакторингом части своего кода.