i-bem: поправлен getMods()#1379
Conversation
|
Если посмотреть на окружающий метод |
|
Дело в том, что сейчас для без-DOM-ных элементов |
|
у |
|
Да, потому что у блоков без DOM-представления и нет элементов. |
|
Как мне кажется, что лучше провести более глубокий рефакторинг здесь:
|
|
Кажется, что если переопределить |
Ну так надо сделать так, чтобы не терялся ) |
|
@dfilatov Поправил. |
common.blocks/i-bem/i-bem.vanilla.js
Outdated
| * @param {Object} mods Modifiers values | ||
| * @returns {BEM} | ||
| */ | ||
| setCache: function(modNames, mods) { |
There was a problem hiding this comment.
Почему он публичный-то? @Protected мы начинаем также с _
There was a problem hiding this comment.
И зачем вообще отдельный метод, вроде можно заинлайнить это по месту.
|
@dfilatov Спасибо! Поправил :) |
common.blocks/i-bem/i-bem.vanilla.js
Outdated
| modCache = this._modCache, | ||
| modNames = [].slice.call(arguments, hasElem ? 1 : 0); | ||
|
|
||
| return !modNames.length ? |
There was a problem hiding this comment.
Странно что ругается хук, но у нас по cs "?" прибивается, должно быть return !modNames.length?, поправь, пожалуйста, везде.
|
Поправил. |
|
@dfilatov нужен твой ок, сможешь посмотреть? |
|
Тесты не проходят же:
|
|
@narqo Поправил ) |
common.blocks/i-bem/i-bem.spec.js
Outdated
|
|
||
| describe('getMods', function() { | ||
| it('should return specified mods', function() { | ||
| block.getMods('mod1', 'mod2', 'mod3').should.be.deep.equal({ mod1 : 'val1', mod2 : true, mod3 : false }); |
There was a problem hiding this comment.
should.be.deep.equal -> should.be.eql
По крайней мере, мы используем везде вторую версию.
|
Поправил. |
|
У меня больше нет вопросов. |
|
@narqo есть ещё какие-то замечания? |
|
@dfilatov это в v4 нужно? |
|
@narqo там же нет |
По мотивам bem/bem-bl#591.
/cc @dfilatov @narqo