-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uncaught Error: Module "textarea": can't resolve dependence "input" #1565
Comments
Скорее всего это особенности сборки. У Чтобы они попали нужно проделать ряд дополнительных манипуляций при сборке: https://github.com/bem/bem-components/blob/v2/.enb/make.js#L73-L94 |
Как раз недавно думал что за js-js такой в конфиге ENB. Зачем такое усложнение? |
Это было сделано, чтобы при подключении на страницу только @blond а нет в планах (хотя бы на 2015-й :) начать делать честные |
На сколько я понимаю сейчас это не работает и все равно приезжает весь блок? И при этом усложняется корректная сборка в сторонних проектах. Сама сборка тоже не очень документированы. |
И если уж нужна такая хитрая зависимость корректнее было бы сделать в обычных shouldDeps зависимость от технологии js блока input. |
ты хотел сказать 2016-й? ))
В очень слабом приоритете есть — bem-sdk-archive/bem-deps#2. Прямо сейчас пишем спецификацию. Пока там всё сыро, план работ — bem-sdk-archive/bem-deps#3. Дальше спецификации в ближайшее время вряд ли что-то сделаем.
Нет, сейчас работает правильно. Проблема только в сложности сборки любых
Что ты имеешь ввиду? |
Я имел ввиду, что зависимость блока textarea, по идее, должна быть описана так: {
mustDeps : { block : 'i-bem', elems : 'dom' },
shouldDeps : [
{
mods : ['disabled', 'focused']
},
'control',
{ tech : 'js', block : 'input' }
]
} Но как раз для этого и нужны "честные"
Ага, понял. Понятно, что честные
Стили и так бы не приехали, т.к. подключаются только по модификатору. Экономия на шаблонах кажется смехотворной: input.bemhtml, input__box.bemhtml и input__control.bemhtml. |
Не совсем так. Такая запись предполагала бы, что любая технология этого блока зависит от И если говорить об честных зависимостях и «умной» сборке, то сборка бы решила, что чтобы корректно работала скажем
Наверное, соглашусь :) @narqo, что скажешь? |
Эта запись говорит, что блоку в целом нужна js технология другого блока и без неё не имеет смысла. |
Сборка не бывает абстрактной, она всегда по технологиям. Поэтому, если мы не указываем явно технологию, это равносильно Если в результате мы хотим получить только декларацию БЭМ-сущностей, то * -> js и js -> js дадут одинаковый результат. Но в общем случае результат разный, т.к. кроме самой декларации мы можем получить ещё дополнительную информацию о том, что эта декларация зависит от других технологий. |
Нормально, давайте напишем, только добавим комментарий, что это не «от хорошей жизни», а потому что нет нормальной поддержки |
Uncaught Error: Module "textarea": can't resolve dependence "input"
Нашли комментарий в textarea.deps.js со ссылкой на это issue. В bem-deps это выражается как и не требует изменений сборки: {
tech : 'js',
shouldDeps: [
{ block: 'input' }
]
}, При такой декларации в сборку css-файла, равно как и других технологий, не попадут файлы блока input. Только js. |
Textarea не подтягивает в сборку технолгию js блока input, хотя в deps он прописан
The text was updated successfully, but these errors were encountered: