Size: a a a

2020 December 07

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Alexander Ponomarev
ломать жс и не нужно, просто непонятно зачем метку перетаскивать куда-то
тут нет ошибки связанной с метками. это просто js
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
убери метку, будет тоже самое
источник

AP

Alexander Ponomarev in Svelte [svelt]
Pavel 🦇 Malyshev
тут нет ошибки связанной с метками. это просто js
я вижу что нет ошибки связанной с меткой. Но зачем перемещать метку на другую позицию в выхлопе по сравнению с исходником?
источник

МТ

Марк Танащук... in Svelte [svelt]
Pavel 🦇 Malyshev
это не дублирование объявления переменной. блин вот тогда еще говорил что зря сделали этот шорткат.
$: автоматически объявляет переменную. Мне приятнее писать:

$: myVar = ...
чем
let myVar;
$: myVar = ...


И я ожидаю правильного объявления myVar(ведь компилятор берет изменение порядка на себя(при топологическом вызове как минимум)).

Не хочу иметь различное поведение(тут объявляет норм, а тут - нет) в одном и том же куске кода, если просто добавился другой, независимый от него блок.
источник

МТ

Марк Танащук... in Svelte [svelt]
К тому же здесь нет никаких проблем, которые создаются простым объявлением всех переменных созданных меткой в начале инстанса
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
$: автоматически объявляет переменную. Мне приятнее писать:

$: myVar = ...
чем
let myVar;
$: myVar = ...


И я ожидаю правильного объявления myVar(ведь компилятор берет изменение порядка на себя(при топологическом вызове как минимум)).

Не хочу иметь различное поведение(тут объявляет норм, а тут - нет) в одном и том же куске кода, если просто добавился другой, независимый от него блок.
компилятор НЕ берет на себя изменение порядка между кодом отмеченным меткой и НЕ отмеченным меткой
источник

МТ

Марк Танащук... in Svelte [svelt]
наоборот удобнее и чище
источник

МТ

Марк Танащук... in Svelte [svelt]
Pavel 🦇 Malyshev
компилятор НЕ берет на себя изменение порядка между кодом отмеченным меткой и НЕ отмеченным меткой
Он просто ставит let прямо перед меткой =\
источник

AP

Alexander Ponomarev in Svelte [svelt]
у зависимых меток все равно код генерируется без меток а в виде какого-то фарша из функций
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
Он просто ставит let прямо перед меткой =\
да. это просто шорткат. я сразу писал что с ним будут проблемы и надо делать явно
источник

ВГ

Вячеслав Гримальский... in Svelte [svelt]
Я как ни открою чат, одни и те же автарки)
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
шорткат нужен потому что:

$: let foo
источник

ВГ

Вячеслав Гримальский... in Svelte [svelt]
Видимо те, кто не поставил чат на Mute
источник

МТ

Марк Танащук... in Svelte [svelt]
Я понятия не имею, в чем проблема ставить let myVar в начале инстанса
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
не валидный JS
источник

МТ

Марк Танащук... in Svelte [svelt]
объясните пожалуйста
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
Я понятия не имею, в чем проблема ставить let myVar в начале инстанса
потому что это может повлиять на работу той части JS которую свелт не отслеживает. а значит на работу кода
источник

AP

Alexander Ponomarev in Svelte [svelt]
Марк Танащук
Я понятия не имею, в чем проблема ставить let myVar в начале инстанса
лол, потому что время жизни у лет переменной это текущий блок, если ты ее вынесешь из ближайших { } то это уже будет неравносильное преобразование
источник

МТ

Марк Танащук... in Svelte [svelt]
Pavel 🦇 Malyshev
потому что это может повлиять на работу той части JS которую свелт не отслеживает. а значит на работу кода
Если let myVar объявляется где то в коде вручную, то просто убирается с начала инстанса та, что вставлена меткой.
источник

МТ

Марк Танащук... in Svelte [svelt]
Как сделано сейчас
источник