004. CSS Modules - убрать нельзя оставить

  Рет қаралды 10,005

Yandex for Frontend

Yandex for Frontend

Жыл бұрын

Пікірлер: 27
@user-ei9jd7pw4s
@user-ei9jd7pw4s Жыл бұрын
Спасибо вам! Доклад хорошо структурирован, наполнен понятными примерами и поэтому получился очень интересным)
@PhilippeRigovanov
@PhilippeRigovanov Жыл бұрын
Спасибо, Алина! Доклад очень полезный!
@kiralatysheva6794
@kiralatysheva6794 Жыл бұрын
Очень доступно и интересно объяснено. Спасибо за доклад!
@andreykachur3827
@andreykachur3827 9 ай бұрын
Спасибо, очень хороший доклад!
@dmitryvolovod4560
@dmitryvolovod4560 Жыл бұрын
Пробовали писать тесты используя селекторы классов, по которым никак нельзя понять нужны ли они в тестах или нет (это вариант, который вы используете). Это очень часто приводило к тому, что при любом изменении кода компонента, который затрагивал его структуру элементов и/или названия классов, тест просто ломался. Проблема в этом подходе в том, что пока не будут запущены тесты, разработчик никак не может предугадать, внесет ли он какие-то существенные изменения в код, от которого зависят тесты. Поэтому мы решили явно добавлять тестовые классы/атрибуты. Если мне не изменяет память, тестировщики, которые также занимались написанием тестов, справлялись с задачей самостоятельно добавить тестовый класс/атрибут в нужное им место в коде => они никак не были ограничены. Если же вернуться к мысли о том, что тестировщик лучше всего тестирует тогда, когда не знает внутренней структуры кода и смотрит на всё как пользователь, то стоит тогда завязываться на роли и тексты, а не на классы или атрибуты.
@gigor1433
@gigor1433 Жыл бұрын
Как направление для решения проблемы тестирования можно добавить разную генерацию классов, условно в dev убираем хеш, это должно решить часть проблем, по моему. Спасибо за интересный доклад, люблю, пока что не от чистого сердца, CSS-Modules и теперь знаю что нужно сделать чтобы полюбить его от чистого сердца. И хотел бы поделиться своим своим способом использования. Я использую bind встроенный в classnames, и тогда стили можно сократить с `styles.class` до `'class'`, так же удобно работать с пропсами прокидывая вместо {class: props} -> {props} или так же цеплять классы [red]. А стоит сие решение 2 строчками кода в файле и автоподстановкой (ищу решение как это можно исправить). Если вдруг решите, прошу поделиться)
@Mak_Sim0
@Mak_Sim0 4 ай бұрын
Классный доклад. Я раньше не прикосался к css модулям, но за глаза не любил. И в начале доклада убедился что они мне не нравятся, но дальше понял что довольно интересная штука
@user-uo7tg9tk3j
@user-uo7tg9tk3j Жыл бұрын
Хороша Маша))) Один минус - от сути доклада отвлекает)))
@en_kratia
@en_kratia Жыл бұрын
Спасибо
@TheLastSeason
@TheLastSeason Жыл бұрын
Спасибо за доклад. Я на моменте, когда прогнали дракона, был очень возмущен. Хотел выключить видео) Но продолжил и понял, что все не так уж плохо)) Не обижайте драконов, ведь чудовищ, как правило, взращивают сами жители городков.
@youtubehhhh
@youtubehhhh Жыл бұрын
Еще один из плюсов css модулей - в продакшене в качестве классов можно использовать вообще только укороченный хэш (например, 5 или 8 последних символов), что значительно сокращает размер бандла стилей.
@amangin
@amangin Жыл бұрын
На самом деле нет, так как зиповый размер на большом проекте будет ~ таким же. А на супер больших просто БЭМ классы и зип выиграет хэши, так как хэши вносят слишком много энтропии.
@youtubehhhh
@youtubehhhh Жыл бұрын
​@@amangin С чего же это хэши вносят много энтропии? Они не будут меняться, где бы вы их не использовали повторно, при этом само название класса получается короче. А чем огромнее проект, тем больше вероятность наличия неповторяющихся классов, что уменьшает профит гзипа.
@PhilippeRigovanov
@PhilippeRigovanov Жыл бұрын
Обязательно сделайте тёмную тему!
@araragi6407
@araragi6407 Жыл бұрын
Помнится мне у авто ру была какая то лажа с ивентами на кнопках переключения фото машин. У меня не с первого раза они накидывались приходилось перезагружать.
@gyros9162
@gyros9162 Жыл бұрын
Как установить фреймворк БЭМ?
@sergiypalamar
@sergiypalamar Жыл бұрын
С торрента скачать
@yakut54
@yakut54 3 ай бұрын
🤣🤣🤣
@Ramilkos
@Ramilkos Жыл бұрын
что касается привязки по классам без хэшей, в случае коллизий всегда можно делать запрос не на весь документ, а внутри специфичного элемента, чтобы обойти эту коллизию Up: я про использование в тестах
@youtubehhhh
@youtubehhhh Жыл бұрын
И на пустом месте раздуть и усложнить css
@Ramilkos
@Ramilkos Жыл бұрын
@@youtubehhhh да, сорян, я имел в виду применительно к тестам. И только там, где лезут проблемы.
@dsr19750222
@dsr19750222 Жыл бұрын
так вот кто интерфейсы на яндексе делает!😁
@au5442
@au5442 7 ай бұрын
Как Яндекс учился использовать css модули, но так и не смог...
@Black1991Star
@Black1991Star Жыл бұрын
Зачем такое усложнение простых вещей? Что выигрывает команда которая использует CSS Modules на проекте? * просто когда докладчик постоянно извеняеться, за то, что кажеться диким, то тут явно что-то не то...
@youtubehhhh
@youtubehhhh Жыл бұрын
Какое усложнение? Вы доклад целиком прослушали? Это наоборот упрощение. И забыл спросить, что вы предлагаете вместо них?
@zakharkibanov8929
@zakharkibanov8929 Жыл бұрын
Чёт так уже к ним привык,что даже не представляю,как без них-то? На последних работах только они и были)
005. Генеративные палитры в дизайн системе
53:23
🤔Какой Орган самый длинный ? #shorts
00:42
Женская драка в Кызылорде
00:53
AIRAN
Рет қаралды 476 М.
НЫСАНА КОНЦЕРТ 2024
2:26:34
Нысана театры
Рет қаралды 889 М.
Я 💛 Фронтенд. Я ❤ Storybook - Семён Левенсон
44:40
CSS-модули, SASS/SCSS и сброс стилей в React-приложении
18:28
Михаил Непомнящий
Рет қаралды 36 М.
7 ways to deal with CSS
6:23
Fireship
Рет қаралды 1,1 МЛН
CSS Modules: Why are they great?
12:03
Harry Wolff
Рет қаралды 39 М.
React и Next js убивают фронтенд!
9:11
Миша Ларченко
Рет қаралды 47 М.