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 bemjson
object Входящий BEMJSON data
object <optional>
Данные по сущности в дереве - Source:
Returns:
- Type
- Node
-
extend(template) → {Template}
-
Наследовать шаблон.
Parameters:
Name Type Description template
Template Базовый шаблон - Source:
Returns:
- Type
- Template
-
helper(nameOrList, callbackopt) → {Template}
-
Добавить одну или несколько пользовательских функций-помощников.
Parameters:
Name Type Attributes Description nameOrList
string | object Имя функции или карта помощников callback
function <optional>
Тело функции - Source:
Returns:
- Type
- Template
-
is(template) → {boolean}
-
Проверить шаблон на соответствие. Вернёт `true`, если хотя бы один селектор текущего шаблона и проверяемого пройдёт неточную проверку.
Parameters:
Name Type Description template
Template Шаблон - Source:
Returns:
- Type
- boolean
-
match(bemjson, dataopt, baseBemjsonopt, modesFromAnotherTemplatesopt, indexopt) → {Node|null}
-
Применить BEMJSON к шаблону.
Parameters:
Name Type Attributes Description bemjson
object Входящий BEMJSON data
object <optional>
Данные по сущности в дереве baseBemjson
object <optional>
Базовый BEMJSON из входящих данных modesFromAnotherTemplates
Array.<string> <optional>
Список полей, которые были установлены из других шаблонов index
number <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 bemjson
object Входящий BEMJSON data
object <optional>
Данные по сущности в дереве baseBemjson
object <optional>
bemjson Базовый BEMJSON из входящих данных modesFromAnotherTemplates
Array.<string> <optional>
{} Список полей, которые были установлены из других шаблонов index
number <optional>
0 Порядковый номер шаблона в общем списке - Source:
Returns:
- Type
- Node