Добрый день! Задумала сделать обобщенный блок меню, с различными модификаторами, меняющими внешний вид как блока, так и элементов в нем. Наткнулась на ситуацию, когда больший вес для шаблонизатора имеет последнее указанное правило и он не хочет проверять оба сразу. Как быть?
Следует использовать add*-режимы: https://goo.gl/gRtllN
спасибо! подскажите еще пожалуйста, а как правильно указать приоритеты модификаторам, если в них есть одинаковые правила (например, размеры полей). В моем случае, нужно чтобы модификатор _last был весомее модификатора темы. вот такая зависимость не помогает https://goo.gl/j5R4Pj
Если шаблоны написаны в одном файле, то нужно просто записать их в правильном порядке, чтобы более весомые оказались ниже.
Если же шаблоны написаны в разных файлах, можно воспользоваться
mustDeps
: в файлеnav/_theme/nav_theme.deps.js
написатьЭта запись означает «подключить перечисленные в поле
mustDeps
зависимости строго до кода сущности, в которой записан такой deps.Ни первый, ни второй вариант почему-то не сработали. В nav__text_theme.deps.js положила зависимость:
({ block: 'nav', elem: 'text', mod: 'theme', val: 'orange', mustDeps: {mods: {last: true}} })
JSON и шаблон (ссылку не дает скопировать, видимо слишком длинная) ссылка
UPD. Опубликовала, а после включила голову и поняла, что нужно сделать наоборот и mustDeps положить в nav__text_last.deps и написать в обратную сторону
({ block: 'nav', elem: 'text', mod: 'last', val: true, mustDeps: {mods: {theme: 'orange'}} })
=) Спасибо за помощь!