Как такое делается в svelte? Есть best practice как стилизовать переиспользуемые компоненты? Не очень понял что сейчас с RFC 13 ( https://github.com/sveltejs/rfcs/pull/13). Почему в RFC самом куча лайков, а в ишью Implement RFC 13 (https://github.com/sveltejs/svelte/issues/5628) куча дизлайков? Вроде бы все должно быть ясно, поскольку всем надо стилизовать компоненты, но от всего что приходит в голову у меня ломка и отторжение. Может опытные старшие товарищи что подскажите
потому что rfc юзлес хрень) передавай класснейм через глобал, глобал потому что модель скоупинга стилей не позволяет бнзопасно передавать класснеймы из одного компонента в другой.
Сознание перестраивается. Если есть определённые правила для изменения - можно передать их наружу переменными. Или как описал Александр - вешать стили.
это худший совет для маржинов передавать их переменными
Да я в курсе, что и аргументы найдутся 🤓
от global меня ломает больше всего. это нарушает инкапсуляцию. По аналогии это как если я хочу настроить телеку контрастность, то мне надо просверлить дыру где-то в области подстроечного резистора, засунуть туда отвертку и покрутить.
комбинируй селектор через .parent > :global(.child) тогда более менее безопасно
в любом случа тому кто соберется делать этот трюк, ему надо узнать есть ли там один рут, какой у рута класс и т.д. и т.п. Это тоже сверление дыры.
нет ты не понял метод до конца)
есть вариант не использовать стайл теги свелта и подключить цсс модули и работать как в реакте)
не, такой подход мне в реакте не нравился совсем, хотя плюсы есть свои тоже
зря это один из самых стабильных и расширямых вариантов, совместим со всем)
самый инстинный путь, самый нативный, самый устоявшийся это html + css + vanilla js. Но в 2021 году мне хочется уюта, компетентности и изоляции без БЭМ. Видимо старость близка
дак это и есть истинный путь но без бэм и с изоляцией
Обсуждают сегодня