я нашел способ сделать такое разделение и даже использовать pug и sass. Но не нашел рабочей настройки в dev режиме собирать sourcemap, чтоб показывало конкретный файл .scss в стилях и .js в скриптах. Может кто знает как коректно настроить sourcemap при таком подходе или референс какой-нибудь на репу даст?
и не надо смешивать ежа с ужом - Svelte задизайнин как одного файловый компонент
если у вас js файл будет отдельно то у вас реактивность вся не будет работать а это фундамент svelte
Vue тоже задизайнен, как SFC. И есть возможность разделения из коробки. В Svelte тоже есть такая возможность с помощью Svelte Preprocess, и всё отрабатывает. Как показывает практика, когда компонент разростается стилями и кодом подходящим к 400-500 строкам, то SFC становиться неудобной партянкой, как раз таки помесь ежа с ужом, приходится выносить стили и код в файлы(на самом деле очень удобно).
Если он у тебя так разрастается, значит дели.
именно это первый признак что у тебя что то не то с композицией компонентов
Vue в своей философии имеет будет поддерживать всё
Делить на несколько компонентов оберток? Может с точки зрения архитектуры это и лучше, но тогда привязка к сущностям теряется. Я тоже недавно столкнулся с подобным. У меня в темлейте компонента считай один div, а логики не нем была куча: хендлеры, реактивные выражения и тд.
Код пока что в приватной репе, но я могу репл сделать, где общий паттерн покажу)
в svelte не должно быть "бизнес" логики, а должна быть логика отображения. Если правильно декомпозировать то проблем с single file component нет никаких
А как же жирный фронт и привязка к Handless CMS. Там ух сколько бизнес логики на фронте?
Там и нет бизнес логики, а только логика отображения компонента в разных кейсах
она просто не должна быть в компоненте, компонент отвечает за отображение и реагирование
возможно тогда проще сделать 2 разных компонента?
Мы, IT-мазохисты, легких путей не ищем ?
Обсуждают сегодня