bem/bem-tools
-
5b5e25eb84eb6ef55d6b4da90b60beb72e27d5be
5b5e25eb84eb6ef55d6b4da90b60beb72e27d5be
Команды для создания БЭМ-сущностей. -
9960b3616ff2ae2fb59b326f2625bd5c773de9e6
9960b3616ff2ae2fb59b326f2625bd5c773de9e6
##### BEM.create.level() -
ad92ea1c32dc6b237581934d9d596d07cc2efea0
ad92ea1c32dc6b237581934d9d596d07cc2efea0
Создание уровня переопределения. -
e28040c2b90cf4be1f69c199ad749dbca1830639
e28040c2b90cf4be1f69c199ad749dbca1830639
###### Опции -
34b3b77167d01e4e95b762562a4bccd60c56aab0
34b3b77167d01e4e95b762562a4bccd60c56aab0
* **String** `outputDir` директория для записи результата, по умолчанию текущая
* **String** `level` «прототип» уровня переопределения
* **Boolean** `force` принудительно создать уровень, даже если он существует -
8955c2c4693bfc925ab8f456ebf6275889490f21
8955c2c4693bfc925ab8f456ebf6275889490f21
###### Аргументы -
227511d3c52e70e0b2b3c96cbec69f0d639bf3ae
227511d3c52e70e0b2b3c96cbec69f0d639bf3ae
* **Array** `names` имена создаваемых уровней переопределения -
8a914682a1732e04786eb2a5f613e20796e09b07
8a914682a1732e04786eb2a5f613e20796e09b07
###### Пример использования -
88c264cbfdd4fbecea384c05133f82607bbfe004
88c264cbfdd4fbecea384c05133f82607bbfe004
```js
var PATH = require('path'),
Q = require('q'),
BEM = require('bem').api, -
074ecd20251b4b66672353ffea7a15dd126afe7e
074ecd20251b4b66672353ffea7a15dd126afe7e
outputDir = PATH.join(__dirname, 'levels'),
levels = ['blocks-common', 'blocks-desktop']; -
0e33bd5ff066b571d57c68e14f24dae5243d1da8
0e33bd5ff066b571d57c68e14f24dae5243d1da8
Q.when(BEM.create.level({ outputDir: outputDir }, { names: levels }), function() {
console.log('Create levels %s at %s', levels.join(', '), outputDir);
});
``` -
463e86d0ad6b42f8c1a9544cd6365f30b240ae5b
463e86d0ad6b42f8c1a9544cd6365f30b240ae5b
##### BEM.create() -
29833492363b56fba486ade1295260e7cc285669
29833492363b56fba486ade1295260e7cc285669
Создание БЭМ сущностей: блоков, элементов, модификаторов или их значений. -
7f0e2dc572e59499c889f3a14a97c4bab3be0d0c
7f0e2dc572e59499c889f3a14a97c4bab3be0d0c
* **String** `level` директория уровня переопределения, по умолчанию текущая
* **Array** `block` имя блока (обязательный параметр)
* **Array** `elem` имя элемента
* **Array** `mod` имя модификатора
* **Array** `val` значение модификатора
* **Array** `addTech` добавить перечисленные технологии к технологиям для уровня по умолчанию
* **Array** `forceTech` использовать только указанные технологии
* **Array** `noTech` исключить указанные технологии из использования
* **Boolean** `force` принудительно создавать файлы модификатора -
7b331eb460e32272d647bc63e925bf7f8b482a96
7b331eb460e32272d647bc63e925bf7f8b482a96
forceTechs = ['css'],
block = 'b-header',
elem = 'logo',
mods = ['lang'],
vals = ['ru', 'en']; -
bb69673d089f52e2dff20bc2be6fcfab0337e802
bb69673d089f52e2dff20bc2be6fcfab0337e802
Q.when(BEM.create({ forceTechs: forceTechs, block: block, mod: mods, val: vals }), function() {
console.log('Create mod %s of block %s with vals %s', mods.join(', '), block, vals.join(', '));
}); -
6de3ef34ffcf3fdaeb35fcb6a7e1de182ee9ad7d
6de3ef34ffcf3fdaeb35fcb6a7e1de182ee9ad7d
Q.when(BEM.create({ forceTechs: forceTechs, block: block, elem: elem, mod: mods, val: vals }), function() {
console.log('Create mod %s of elem %s of block %s with vals %s', mods.join(', '), elem, block, vals.join(', '));
});
``` -
ba16680bd9a4a1f3253160bacfa290c67eb51310
ba16680bd9a4a1f3253160bacfa290c67eb51310
##### BEM.create.block() -
a859fc1ced9fb245e83ff5349c5a2e7b76203871
a859fc1ced9fb245e83ff5349c5a2e7b76203871
Создание блока. -
e8021cdce4edc7856705d9bc2201d4cfdec350c8
e8021cdce4edc7856705d9bc2201d4cfdec350c8
* **String** `level` директория уровня переопределения, по умолчанию текущая
* **Array** `addTech` добавить перечисленные технологии к технологиям для уровня по умолчанию
* **Array** `forceTech` использовать только указанные технологии
* **Array** `noTech` исключить указанные технологии из использования
* **Boolean** `force` принудительно создавать файлы блока