Как стать автором
Обновить
24
0
Александр Баумгертнер @alexbaum

JS-developer

Отправить сообщение
Супер, спасибо!
Наглядное и простое изложение, спасибо! С переводом терминоголоией margin и padding не везло раньше, было много путаницы.

+100500:
В боксовой модели (box model) поля — это расстояние между контентом (content) и границей блока (border). А отступы это расстояние между границей блока и границей соседнего или родительского элемента.
Если интересно посмотреть на БЭМ + Sailsjs (как Rails только на javascript), у меня есть
Эх, почему до сих пор работодатели даже крупных компаний экономят на стульях?
Да, к сожалению, порог входа выше, чем «писать html».
Дружище, я купил две и одну из них послал тебе по почте :)
А по теме – да, не удобно сделано, хочется СМС-кой мочь оплатить. И электронными деньгами.

Текущая ситуация:



СССР стал свехдержавой в результате нечеловеческого перераспределения человеческих ресурсов (простите за тавтологию). Репрессии, экспроприация, раскулачивание, изъятия ресурса из деревни (к чему это привело можно увидеть сейчас в любой деревне). Потом стали продавать нефть, но даже выгодная конъюнктура рынка не спасла от дефицита 70-80. Посмотрите разрешенные (пока) советские фильмы, «Служебный роман,» «Гараж» и тд.)
Нефть в цене не растет, экономика в застое – надо увеличить налогооблагаемую базу!
Курс пляшет в отношении фиатных валют, потому что не ясно будущее биткоина в свете вот таких государственных ограничений.
Если завтра наше правительство объявит, что передача друг другу долларов незаконна, обменники должны прекратить работу, вывоз баксов за границу наличкой запрещен, а валютные вклады принудительно конвертируются по курсу в рублевые

Кстати, вполне вероятное развитие событий в ближайшие пару лет.
Вот только почему вы не обращаете внимания что я пишу именно про синтаксис, что он избыточен, неудобен, не нагляден

Тут дело вкуса, я не использую препроцессоры, другие используют. Спор не конструктивный.

не типизирует входы/выходы и не даёт нам никаких статических гарантий.

Поясните пожалуйста, я не очень понял, если приведете пример, буду вдвойне благодарен.

Плохо ли использовать js функции в коде шаблонизатора? Безусловно плохо, вы превращаете декларитивный стиль, ради которого вся эта шумиха с БЭМом и затевалась, в обычные императивные js подпрограммы.

BEMJSON — это данные (шаблонизатор — BEMHTML), и в конкретном примере я показал возможность прототипирования контента страницы. Естественно, это не продакшен код.

Я бы начал с синтаксиса, потом переписал бы декларацию стилей из css прямо в BEMJSON через миксины a la SASS/compass

BEMJSON про струтуру блока, за оформление отвечает старый добрый CSS блока, не нужно смешивать структуру и оформление — это как раз хорошее, что есть в HTML+CSS. Или я вас не так понял?

Спасибо за подробные комментарии!
В haml на мой взгляд избавились от тегов, вроде как избыточность пропала, но и код стал менее удобочитаемый, и все равно описывается html-реализация страницы.

В BEMJSON вы можете выполнить произвольный js, например, для прототипирования:

{
  block: 'b-foo',
  content: [
    {
      elem: 'bar'
    },
    {
      elem: 'container',
      content: (function() {
      
                   var contentVariants = ['Hello World', 'Hello Mars', 'Hello, Futurama'];
                   return contentVariants[Math.floor(Math.random() * contentVariants.length)];
         }())
    }
  ]
}


И главное — BEMJSON он не про HTML, он про более высокий уровень абстракции — блоки.
Мне вот прямо хочется взять и дать ссылку на мой cornerJS

Лучше давайте
через ~3 года 95% браузеров как минимум с полифиллом будут поддерживать технологию

и
полифилл
приложите пожалуйста.
Покажите пожалуйста примеры избыточности BEMJSON. Я сравнивал с XML, последний явно избыточней.
haml лишь подслащивает HTML. Альтернативы?
Потому что единственная и первоочередная задача БЭМа — это инкапсуляция классов.

Вы забываете, что фронтенд — это еще и javascript. Без методологии в любом более-менее сложном проекте код быстро превращается в лапшу.
С помощью i-bem вы инкапсулируете логику работы в блоке. У вас не только css независимый, но и javascript имеет модульную расширяемую структуру, органично отражающую общую концепцию BEM.
Буду благодарен, если сообщите подробнее OS и версию браузера, я проверил, у меня бага не повторяется (Mac OS 10.8):

image
Вы же пытаетесь — на случайно взятых примерах что-то доказать.

Примеры не случайные.
Верстаю по БЭМу и забываю. Нет нужды помнить все эти nav > ul > li.

Вот вы, никогда не видели верстку и тут видите такой код:

<div class="user-thumb">
   <div class="user-thumb__name"></div>
</div>


Сложно понять, где будет имя пользователя?

Информация

В рейтинге
Не участвует
Откуда
Измир, Измир, Турция
Дата рождения
Зарегистрирован
Активность

Специализация

Специалист
Senior
От 4 000 $
JavaScript
React
HTML
CSS
TypeScript
Express
NextJS