<style scope={Component} />.
Семантика примерно такая - для каждого компонента в одном файле можно добавлять по одному переопределению стилей. Они будут применяться ко всем инстансам целевого компонента внутри текущего компонента. Например:
<script>
import Button from 'lib/Button.svelte';
</script>
<Button>I am useless</Button>
<style scope={Button.hash}>
/* */
</style>
В таком случае, к SvelteComponent нужно добавить свойство, которое будет хранить его svelte-123xyz класс. Даже без нового атрибута в style, только с ним, кажется, жить станет легче.
Без бесячего оборачивания в дивы + глобалов можно будет хакать компоненты.
Я в документации из похожего нашёл только ручное присвоение хэша. Так что можно написать костыль, который будет его сам генерировать и экспоузить в коде. Но это не то.
Как вам, хоть чуть-чуть заманчиво? И какая вообще работа ведётся мейнтейнерами в области стилизации? Судя по всему, они сейчас только Kit пытаются зарелизить
я ж вроде писал ответ на твою идею, зачем выдумывать переусложнённые велосипеды и что ты будешь делать когда одному компоненту надо маржин лефт, а другому позишен абсолют топ райт ?
А какие есть альтернативы? Модули? Насчёт маржин лефт и позишен абсолют. Моя идея в том, что переопределения будут применяться только внутри переопределившего компонента. Хотя, у компонента нет корневого элемента, есть только фрагмент. Так что вряд-ли это возможно.
ну и с модулями тоже самое, только ты можешь по разному настроить позиционирование компонента в рамках родителя
Обсуждают сегодня