Полный список Handlebars helpers в botmother

{{declension}}

Изменяет склонение слова в зависимости от числа

Общий вид:

{{declension NUMBER WORDS}}

Пример:

{{declension 10 'рецепт, рецепта, рецептов'}}

NUMBER - число;
WORDS - строка, состоящая из слов 1, 2, 5.

{{eq}}

Сравнивает переменную со значением

Общий вид:

{{eq A B OPTIONS}}

Пример:

A=10 B=10
{{#eq A B}} C {{else}} D {{/eq}}
результат будет C.

A — переменная со строкой,
B — строка,
OPTIONS —

{{formatDate}}

Если мы получили дату в timestamp, можем её вывести в любом подходящем варианте. Ещё можем вывести текущее время (время будет по Москве).

Общий вид:

{{formatDate DATE FORMAT LANG}}

Пример:

{{formatDate 1527774336  'MM/DD/YYYY' 'ru'}}

DATE — дата в timestamp,
FORMAT — выходной формат даты,
LANG — язык
(‘ru’, ‘eu’ и т.д.)

Таблица с возможными обозначениями формата


{{and}}

Сравнивает две переменные, берёт значения true и false.

Общий вид:

{{and onion, cut}} yes {{else}} no {{/and}}

Если onion = true и cut = true, ответ будет yes. Если одно из значений false, ответ будет no.


Математика и числа

{{sum}}

Возвращает сумму элементов

Общий вид:

{{sum var1 var2}}

Пример:

{{sum “[1, 2, 3, 4, 5]”}} // 15
{{sum 20 variable}} // 20 + значение переменной variable

{{toFixedRub}}

Обрезает до двух знаков после запятой. Если вставить ',' в конце, будет выводить с точкой (10.65)

Общий вид:

{{toFixedRub NUM ','}}

NUM — число

{{toRub}}

Обрезает до двух знаков после запятой. Получается число с запятой (9,89)

Общий вид:

{{toRub NUM}}

NUM — число

{{random}}

Генерирует рандомное число между двумя значениями

Общий вид:

{{random MIN MAX}}

MIN — минимальное значение,
MAX — максимальное значение

Замена символов

{{escapeJsonEntities}}

Заменяет в переменной символы / и '

{{escapeJsonEntities tempVar}}

tempVar — строковая переменная

{{escapeQuotes}}

Заменяет у входной строки " на '

{{escapeQuotes tempVar}}

tempVar — строковая переменная

{{urlencode}}

Кодирует каждый элемент URL с помощью в UTF-8

Общий вид:

{{urlencoded URL}}

Пример:

{{encodeURI "http://example.com?comment=Thyme &time=again”}}

Результат

http%3A%2F%2Fexample.com%3Fcomment%3DThyme%20%26time%3Dagain

URL — ссылка

Работа с объектами

{{getArrayElement}}

Возвращает элемент массива

Общий вид:

{{getArrayElement ARRAY INDEX PATH}}

Пример:

{{getArrayElement Temp_Array 1 'a[0].b.c’}}, где Temp_Array = [{ 'a': [{ 'b': { 'c': 3 } }] }] → 3

ARRAY — входной массив,

INDEX — индекс желаемого элемента,

PATH -путь к элементу внутри ARRAY[INDEX]