Я пытаюсь разбить мое монолитное приложение React на части многократного использования, которые можно использовать совместно с другими проектами.
Я хочу извлечь некоторые общие компоненты (например, Button, Header, Dropdown и т. Д.) Вмоя собственная маленькая библиотека пользовательского интерфейса.Проблема, с которой я сталкиваюсь, заключается в том, как управлять CSS.Прямо сейчас у моего приложения есть только одна таблица стилей, которая обо всем позаботится.
Вот решения, которые я видел:
- Встраивание стилей CSS для каждого компонента в JS длясам компонент (CSS в JS).
import
или require
CSS-файлы в JS для компонента и использование веб-пакета для комплектации CSS-файла.
Я действительно не люблю ни один из вариантов.Я понимаю привлекательность совместного размещения стилей с компонентом, но я чувствую, что: а) он загромождает определение компонента, и б) он борется с тем, как работает CSS (больше не нужно использовать преимущества каскадных стилей, поскольку все настолько ограниченок отдельному компоненту).
И я не могу заставить себя import
файл CSS.Это просто так неправильно.Мы даже больше не пишем javascript.
Я понимаю, что это не совсем популярные мнения, но есть ли третий вариант, который мне не хватает для получения старого доброго CSS-файла изМодуль NPM, который я могу просто вставить в свой HTML и использовать?В идеале тот, который не включает в себя копирование / вставку из node_modules.:)