Size: a a a

2020 March 23

A

Arushwl in Svelte [svelt]
А я не вкуриваю как await работает. Можешь растолковать на пальцах, плиз?
источник

A

Arushwl in Svelte [svelt]
Чем он оперирует и как? Из доков не догнал.
источник

A

Arushwl in Svelte [svelt]
Я в лоб прописал в await условие, а он все одно не выводит ожидание и ошибку...
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Arushwl
А я не вкуриваю как await работает. Можешь растолковать на пальцах, плиз?
await резолвит промисы прямо в шаблоне
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Больше ничего
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Фактически это шаблонный эквивалент:

Promise.resolve(foo).then().catch();
источник

A

Arushwl in Svelte [svelt]
Ага! А в каких кейсах промис адекватен?
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Arushwl
Ага! А в каких кейсах промис адекватен?
во всех связанных с асинхронностью, например запросами к серверу. это сейчас основной механизм работы.
источник

EM

Eugene Maltsev in Svelte [svelt]
Вызвать fetch прям в шаблоне? 🤔
источник

A

Arushwl in Svelte [svelt]
Pavel 🦇 Malyshev
во всех связанных с асинхронностью, например запросами к серверу. это сейчас основной механизм работы.
Спасиб
источник

A

Arushwl in Svelte [svelt]
Собсно данные и жду с сервера, но обращаюсь к переменной куда они пишутся. Данные - есть / данных - нет - это не промис?
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Arushwl
Собсно данные и жду с сервера, но обращаюсь к переменной куда они пишутся. Данные - есть / данных - нет - это не промис?
если ты их уже где-то резолвишь в данные и пишешь куда-то в стор, тогда тебе await уже не нужен
источник

A

Arushwl in Svelte [svelt]
Розолвю и пишу ) в хендлерах для сервера промисы
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Eugene Maltsev
Вызвать fetch прям в шаблоне? 🤔
не сам fetch, а результат его работы. но главное можно тут же управлять сценариями его разрешения
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Arushwl
Розолвю и пишу ) в хендлерах для сервера промисы
так вот ты либо этого не делаешь и тогда получаешь возможностью резолвить по месту и сразу отрисовывать разные статусы
источник

T

Th0r in Svelte [svelt]
Arushwl
Собсно данные и жду с сервера, но обращаюсь к переменной куда они пишутся. Данные - есть / данных - нет - это не промис?
промис - это специальный объект, если ты поверх него делаешь какую-то свою обертку, он не будет работать как промис https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
либо резолвишь и уже просто используешь данные, обычно с дополнительными проверками
источник

A

Arushwl in Svelte [svelt]
Спасиб.
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
на самом деле #await очень сильно упрощает некоторые процессы, при этом создавая и некоторые проблемы. одна из которых заключается в том, что иногда данные нужно не только получать, но и менять их. если они храняться в промисе, то делать это не так удобно. это одна из причин зачем я написал svelte-asyncable
источник

EM

Eugene Maltsev in Svelte [svelt]
Кстати, а в svelte есть возможность писать свои директивы для шаблонизатора? :)

Хотя наверное нет смысла 🤔
Можно просто js функции/компоненты юзать.
источник