Всем привет!
Начинаю изучать BEM, пытаюсь поработать с библотекой bem-forms. Библиотеку подключил, прописал путь до библиотеки в .bem/make.js. BEMHTML библиотеки отрабатывает, html-tag формы преобразуется из div в form. Не получается доопределить поведение формы в JavaScript. Пытаюсь сделать это следующем образом, как указано здесь.
modules.define('form', function(provide, Form) {
    provide(Form.decl({
        onSetMod: {
            'js': {
                'inited': function() {
                    console.log('form started ...');
                }
            }
        }
    }));
});
При этом поведение блока button из библиотеки bem-components таким же образом переопределить получается.
Использую bem-tools и project-stub.
Пока писал, заметил, что у формы не проставляется модификатор js_inited. Как можно поправить? В BEMJSON явно указал js: true, но ничего не происходит.
P.S. И не большой вопрос, при создании нового блока, bem-tools создает файл blockName.browser.js. Что значит browser.js? Чтобы указать, что в файле клиентский код?
Заранее спасибо!
Возможно, тут не хватает зависимости от
['i-bem__dom'],Еще, похоже, мы забыли про поддержку bem-tools ;-( https://github.com/bem/bem-forms/tree/master/common.blocks — не вижу .bem папок на уровнях
Завел issue: https://github.com/bem/bem-forms/issues/126
@bradbenetton
Да, т.к. поддерживается еще
node.jsдля сервера. Кромеbrowser.jsв сборку клиентского кода попадут также файлы просто сjs, их следует воспринимать как синонимы.@bradbenetton Кстати, это тоже может быть проблемой и причиной отсутствия инициализации.
enb-diverse-jsподключается??.browser.jsвходит в сборку на клиент?А, у вас же
bem-tools.@zxqfox у меня такая же проблеам возникла, использую bem-forms#v1.0.0 , enb, bemdom в зависимости добавил, а inited не ставится(
Нужен еще кусок bemjson с формой.
js: true есть?
https://github.com/bem-incubator/bem-forms/blob/v1.0.0/common.blocks/form/form.bemhtml#L5 да и в bemjson есть, на всех формах, даже которые я не переоредлял нет js_inited.
Я понял, это наверное из-за линивой иницилазции :)
А, точно. ;-)
Примеры доопределения есть тут https://github.com/bem-incubator/bem-forms/tree/v1.0.0/example.blocks , а вот bem-tools починим да)