new Template(…pattern, modes)
Модуль шаблонизации BEMJSON-узла.
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
pattern |
string |
<repeatable> |
Шаблоны для матчинга |
modes |
object | Моды для преобразования узла |
- Source:
Members
-
(static) baseTemplate :Template
-
Базовый шаблон.
Type:
- Template
- Source:
-
modes :object
-
Моды для преобразования узла.
Type:
- object
- Source:
-
(nullable) weight :number
-
Вес шаблона. Рассчитать вес шаблона возможно при наличии только одного селектора. При наличии в шаблоне нескольких селекторов его вес устанавливается как `null`.
Type:
- number
- Source:
Methods
-
(static) base(bemjson, dataopt) → {Node}
-
Получить БЭМ-узел на основе BEMJSON по базовому шаблону.
Parameters:
Name Type Attributes Description bemjsonobject Входящий BEMJSON dataobject <optional>
Данные по сущности в дереве - Source:
Returns:
- Type
- Node
-
extend(template) → {Template}
-
Наследовать шаблон.
Parameters:
Name Type Description templateTemplate Базовый шаблон - Source:
Returns:
- Type
- Template
-
helper(nameOrList, callbackopt) → {Template}
-
Добавить одну или несколько пользовательских функций-помощников.
Parameters:
Name Type Attributes Description nameOrListstring | object Имя функции или карта помощников callbackfunction <optional>
Тело функции - Source:
Returns:
- Type
- Template
-
is(template) → {boolean}
-
Проверить шаблон на соответствие. Вернёт `true`, если хотя бы один селектор текущего шаблона и проверяемого пройдёт неточную проверку.
Parameters:
Name Type Description templateTemplate Шаблон - Source:
Returns:
- Type
- boolean
-
match(bemjson, dataopt, baseBemjsonopt, modesFromAnotherTemplatesopt, indexopt) → {Node|null}
-
Применить BEMJSON к шаблону.
Parameters:
Name Type Attributes Description bemjsonobject Входящий BEMJSON dataobject <optional>
Данные по сущности в дереве baseBemjsonobject <optional>
Базовый BEMJSON из входящих данных modesFromAnotherTemplatesArray.<string> <optional>
Список полей, которые были установлены из других шаблонов indexnumber <optional>
Порядковый номер шаблона в общем списке - Source:
Returns:
Экземпляр БЭМ-узла или null при несоответствии BEMJSON шаблону- Type
- Node | null
-
split() → {Array.<Template>}
-
Разбить шаблон на шаблоны с единичными селекторами.
- Source:
Returns:
- Type
- Array.<Template>
-
transform(bemjson, dataopt, baseBemjsonopt, modesFromAnotherTemplatesopt, indexopt) → {Node}
-
Получить БЭМ-узел на основе BEMJSON.
Parameters:
Name Type Attributes Default Description bemjsonobject Входящий BEMJSON dataobject <optional>
Данные по сущности в дереве baseBemjsonobject <optional>
bemjson Базовый BEMJSON из входящих данных modesFromAnotherTemplatesArray.<string> <optional>
{} Список полей, которые были установлены из других шаблонов indexnumber <optional>
0 Порядковый номер шаблона в общем списке - Source:
Returns:
- Type
- Node