Size: a a a

Svelte [svelt] - All about Svelte JavaScript framework.

2021 December 04

DK

Dan Kozlov in Svelte [svelt] - All about Svelte JavaScript framework.
Чем плохо иметь отдельный пропс сугубо под экшены, где ты можешь в виде объекта обозначить хоть сто якорей, а в самом компоненте вручную их заассайнить? Тем, что оно не из коробки?

Все эти аргументы — про изоляцию стилей, про конкретную реализацию фич, или их недостаток — это все нытье в формате «они (не) сделали как я хочу». Это неконструктивно и так оно во всех без исключения проектах. Это плохо, когда нет выхода, но если он есть, это не недочет, а просто детали реализации.
источник

ER

Eric Rovell in Svelte [svelt] - All about Svelte JavaScript framework.
TS ноет, например, когда экшен пуст, приходится костылить.
источник

DK

Dan Kozlov in Svelte [svelt] - All about Svelte JavaScript framework.
У нас разное понимание костылей 😂 предоставление дефолтного аргумента я костылем не считаю.

А еще можно набежать в лэнг тулзы и попросить обновить сигнатуры, или даже сделать это самостоятельно.
источник

ER

Eric Rovell in Svelte [svelt] - All about Svelte JavaScript framework.
Случайно не знаешь, есть ли способ не писать постоянно типы для пропсов? Много компонентов имеют общие пропсы, постоянно приходится писать одно и то же.
источник

ER

Eric Rovell in Svelte [svelt] - All about Svelte JavaScript framework.
Можно конечно объект, но это уже обсуждалось, бьёт по перформансу
источник

DK

Dan Kozlov in Svelte [svelt] - All about Svelte JavaScript framework.
Словом, вот у этой «проблемы» на поверку оказывается миллион решений, от тактических до стратегических.
источник

DK

Dan Kozlov in Svelte [svelt] - All about Svelte JavaScript framework.
С чего это? Как именно это бьет по перфомансу?
источник

ER

Eric Rovell in Svelte [svelt] - All about Svelte JavaScript framework.
Если меняется один элемент в объекте, меняется весь объект? Разве не так?
источник

DK

Dan Kozlov in Svelte [svelt] - All about Svelte JavaScript framework.
Не уверен, что знаю. Пробовал объявлять интерфейс пропсов вручную?
источник

ER

Eric Rovell in Svelte [svelt] - All about Svelte JavaScript framework.
Наверное, я не знаю как это делается
источник

DK

Dan Kozlov in Svelte [svelt] - All about Svelte JavaScript framework.
Зависит от. Объект может поменяться, а ссылка на функцию остаться той же, поэтому реактивность не триггернется. Надо смотреть конкретную реализацию. У меня все экшены — это модульные функции, поэтому никакого налога на производительность от объектов не будет.
источник

DK

Dan Kozlov in Svelte [svelt] - All about Svelte JavaScript framework.
Я не уверен, что ts это скушает, но попробуй так:


interface $$Props extends { value: number }

export let value


Я не у компа, но вроде с названиями не попутал.
источник

DK

Dan Kozlov in Svelte [svelt] - All about Svelte JavaScript framework.
Кстати, то, что ТС в свелте сбоку приделан — второй главный минус, который я обозначил в той презе. Больше минусов не было :)
источник

KN

Konstantin Nosov in Svelte [svelt] - All about Svelte JavaScript framework.
вот это хитро упаковать я и не нашел как сделать :(
источник

KN

Konstantin Nosov in Svelte [svelt] - All about Svelte JavaScript framework.
нет, прочитать, распарсить и в апи методе использовать данные из него
источник

С

Серёжа in Svelte [svelt] - All about Svelte JavaScript framework.
А почему батчинг это плохо?
источник

ER

Eric Rovell in Svelte [svelt] - All about Svelte JavaScript framework.
Спасибо, покопаюсь на днях, отпишусь.
источник

ER

Eric Rovell in Svelte [svelt] - All about Svelte JavaScript framework.
Вообще, много чего узнал из исходников твоего блога, с меня звезда😁
источник

AP

Alexander Ponomarev in Svelte [svelt] - All about Svelte JavaScript framework.
батчинг это наоборот хорошо, но в солиде там не все так однозначно, он там есть но я не понял везде ли его надо вручную делать или все таки где-то есть автоматический
источник

AP

Alexander Ponomarev in Svelte [svelt] - All about Svelte JavaScript framework.
разве нельзя сделать?
import type { CommonProps } from './common';

interface $$Props extends CommonProps { // Special Props }
источник