Closed voischev closed 10 years ago
попробуй завернуть в анонимную функцию:
attrs()(function() { return { href: this.ctx.url }; }),
@tadatuta да в функции работает. Дока смутила. Чем обусловлено такое поведение в дев режиме?
в доке http://ru.bem.info/libs/bem-core/2.0.0/bemhtml/reference/ про это есть абзац начиная со слов «NB Необходимость оборачивать блок JavaScript-кода в безымянную функцию».
процитирую ответ @narqo об этом: В dev-режиме шаблоны же тупо конкатенируются (быстрая компилляция, отладка того, что написал и пр. прелести). Поэтому в цепочке:
block('blah').match(this.ctx.blah === 'blah')
сначала всегда выполнится условие this.ctx.blah === 'blah'
, а потом его результат передастся в match
. Все как в обычном JS: (K.O. ;)
Скачиваю проект по инструкции.
Делаю блок из примера.
в index.bemjson.js подключаю
в make.js
Пробую собрать / запустить чере bem server
bem make -m clean && bem make
Выдает ошибку
TypeError: Cannot read property 'url' of undefined