Size: a a a

2021 February 18

AP

Alexander Ponomarev in Svelte [svelt]
так или иначе если он нужен то он где-то будет
источник

DK

Dan Kozlov in Svelte [svelt]
Dan Kozlov
Да куча ифэлсов, куча svelte-ignore, ну посмотри только на эту buttonProps, какая же мразота, какие-то ублюдские контексты, три миллиарда пропсов, слоты в разных местах, svelte:component… 🤮
Но самое главное — это всё, чтобы отобразить сраную кнопку. Еще и достаточно стрёмную.
https://carbon-svelte.vercel.app/components/Button
Простите христа ради грешника, я всего лишь индистартапер, у меня нет огромной команды. Мне сложно понять, чем всё это лучше <button class='button'>, у меня нет команды огромной, которая не умеет держать в голове названия классов, и вот это всё.
источник

DK

Dan Kozlov in Svelte [svelt]
Dan Kozlov
Но самое главное — это всё, чтобы отобразить сраную кнопку. Еще и достаточно стрёмную.
https://carbon-svelte.vercel.app/components/Button
Простите христа ради грешника, я всего лишь индистартапер, у меня нет огромной команды. Мне сложно понять, чем всё это лучше <button class='button'>, у меня нет команды огромной, которая не умеет держать в голове названия классов, и вот это всё.
Это попытка затащить реакт в свелт. Противоестественно, имхо.
источник

AP

Alexander Ponomarev in Svelte [svelt]
это попытка имплементировать дизайн систему со всеми экстеншен поинтами которые им уже потребовались
источник

DK

Dan Kozlov in Svelte [svelt]
Что позволено Юпитеру, то не позволено быку. У нас другая экосистема, должны быть другие инструменты.
источник

AP

Alexander Ponomarev in Svelte [svelt]
самое главное что код понятный и пропсы задокуменчены
источник

EI

Eugene Ilyin in Svelte [svelt]
Dan Kozlov
Так, еще раз.
Тришейкинг — это когда вы импортируете из пакета в 200 килобайт одну функцию, и бандлер вам собирает не 200 килобайт зависимости, а одну функцию.
В компонентах — это удаление неиспользуемого кода. Оно работает, но очень ограниченно, и тут не проблема свелта.
Вы можете везде явно указывать, что у компонента только один используемый пропс, а в каком-нибудь одном месте — неявно инициировать компонент через асинхронный импорт, <svelte:component>, императивный вызов на селекторе и так далее. Такое сложно отследить. Терсеры и прочие утилиты не настолько умны, и вряд ли когда-нибудь будут.
Нет это не только _одну функцию из пакета_, это также и статический import/export а так же и __PURE__ подсказки для кода без сайд эффектов - всё это хорошо и сильно уменьшает сборку, кроме того вы можете иметь один большой файл с кучей экспорта внутри как это делаеют библиотеки и импортировать только одну две функции и вот тогда import { * as foo } from вместо import { foo, bar } from злейшее зло. А на заре перехода к стандартному импорту/экспорту для default еще и куча обвязки городилась.
источник

AP

Alexander Ponomarev in Svelte [svelt]
импорт со звездой почти всегда легко обрабатывается и шейкается
источник

EI

Eugene Ilyin in Svelte [svelt]
Вот почему я дергают при виде $$props
источник

EI

Eugene Ilyin in Svelte [svelt]
Неа стоит "один раз козу" - обратиться к свойству под звездочкой динамически или вычислимо - как тебя вся библиотека затянется
источник

EI

Eugene Ilyin in Svelte [svelt]
Я если по конкретным именам то и звездочка не нужна
источник

AP

Alexander Ponomarev in Svelte [svelt]
если честно за 5 лет никто звезде по динамическому полю имени не обращался =)
источник

V

Vetro in Svelte [svelt]
Alexander Ponomarev
хз умеет ли роллап в комон чанки =)
умеет
источник

AP

Alexander Ponomarev in Svelte [svelt]
в любом случае для этого есть рубеж проверки бандл сайзов на CI (обычно)
источник

EI

Eugene Ilyin in Svelte [svelt]
Ну обычно затягивают всё под звездочку как раз для динамики
источник

EI

Eugene Ilyin in Svelte [svelt]
Для статики есть прямые имена экспортируемые
источник

AP

Alexander Ponomarev in Svelte [svelt]
полагаться на тришейкинг без проверки тришейкинга это грустно =)
источник

EI

Eugene Ilyin in Svelte [svelt]
Alexander Ponomarev
хз умеет ли роллап в комон чанки =)
Умеет и весьма гибко вплоть до своей логики что куда распихивать
источник

AP

Alexander Ponomarev in Svelte [svelt]
Eugene Ilyin
Для статики есть прямые имена экспортируемые
а еще они иногда пересекаются с именами из других модулей и переименовывать их руками через as сложнее чем неймспейсить через звезду
источник

EI

Eugene Ilyin in Svelte [svelt]
Alexander Ponomarev
полагаться на тришейкинг без проверки тришейкинга это грустно =)
Всё зависит от контекста проекта скорости разработки сроков и цены...
Но так да погладеть на финальную сборку глазками никогда не помешает
источник