169 похожих чатов

Привет! Пишу сейчас приложение на Vue.js. Планирую использовать его в нескольких

других Vue.js проектах в качестве компонента.
У приложения есть свои стили и я не хочу, чтобы их случайно переопределили стили родительского приложения.
Уже перечитал кучу статей и мною были найдены 4 варианта: <style scoped>, css modules, BEM css, просто использовать префикс для классов (например _myapp).
Я также хочу, чтобы родительское приложения всё же могло менять стили моего компонента, но не случайно, а намеренно.

1. Как проще всего это реализовать и какой вариант использовать? BEM кажется слишком многословным. Просто использовать <style scoped>, а потом менять стили через /deep/ будет нормально?
2. Как лучше всего управлять стилями дочернего компонента? Через props или же не выдумывать и просто через глобальный css родительского приложения.

Буду очень благодарен за советы.
Спасибо.

2 ответов

7 просмотров

привет css variables как вариант

BEM для модулей выстраивает самые красивые каскады. При правильной комбинации классов - элементы верстки никонда не будут конфликтовать с остальной страницей и не развалятся при любых комбинациях элементов в html. + легко управлять различными вариантами стилизации(например dark mode)

Похожие вопросы

Обсуждают сегодня

Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
10
Тут кста кто-нибудь NeoVim использует?
Simple Sorcerer
13
А чем вам питонисты не угодили?😂
.
79
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
52
А дальше что?.. Записать в файл, потом в Код?.. И потом разбирать как-то?..
Хаскель Моисеевич Гопник
14
доброго времени. db, dw и прочие исполняются при трансляции или при выполнении программы?
lutayyy
10
Почему никто не подсказал, что можно объявить свои типы данных, в которых меньше полей, чем в отданном джейсоне, и добавлять их по необходимости?
Strange Rabbit
10
Хтось використовував Vapor на Windows?
Jaroshevskii
15
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
86
Карта сайта