Использование CSS-in-JS в Svelte
Вам это не нужно, но вы можете
CSS стили являются основной частью любого веб-приложения. И по определению, UI фреймворк без встроеных средств работы со стилями не будет полноценным.
Вот почему Svelte позволяет добавлять CSS стили в тег <style>
внутри компонента. Совместное размещение вашего CSS вместе с HTML разметкой решает самые большие проблемы, с которыми сталкиваются разработчики при написании CSS, при этом избегая новых проблем, одновременно предлагая совершенно прекрасный опыт разработки.
Но всё же у Svelte имеются некоторые ограничения при обработке стилей. Например, сложно шарить стили между компонентами или оптимизировать стили всего приложения целиком. Это те области, которыми мы планируем заняться в будущих версиях, а пока, если вам нужны эти вещи, используйте любую, независящую от фреймворков, библиотеку CSS-in-JS.
Пример
Можно использовать библиотеку Emotion для генерации изолированных имён классов в отельно взятой области видимости, которые можно использовать сразу в нескольких компонентах:
Важно понимать, что большинство библиотек CSS-in-JS работают в своей среде выполнения и не поддерживают статическое извлечение стилей в отдельный файл .css
во время сборки (а это важно для производительности). Поэтому рекомендую использовать CSS-in-JS, только если это реально необходимо для вашего приложения!
В некоторых случаях, хорошим решением будет сочетание, встроенной в Svelte, обработки CSS стилей вместе с дополнительным использованием CSS-in-JS библиотеки.