Size: a a a

2020 November 27

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
да хватит его путать
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
при чем тут апдейты стора вообще, он в source лежит
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
в этом одна из основных идей сэмпла — не важно как часто апдейтится source, триггером является clock. source может хоть каждую секунду меняться
^
источник

yv

yumaa verdin in ☄️ effector
ну этот вопрос был чисто к стору, а не к семплу
источник

S

Stanislav in ☄️ effector
yumaa verdin
да, если значение в сторе не менялось — то апдейта дальше не будет из стора
тогда понятно зачем написан sample(clicks, clickRequest) а не  просто clicks
источник

S

Stanislav in ☄️ effector
Или просто гуарду нельзя стор передать в source?
источник

DS

Dmitriy Shuleshov in ☄️ effector
Stanislav
тогда понятно зачем написан sample(clicks, clickRequest) а не  просто clicks
В том примере что был приведен вами разницы не будет.

Но будет разница из-за механизма пропуска апдейтов у сторов (если проверка на строгое равенство === предыдущего значения к тому что мы хотим засетить дала true), в том случае когда ивент обновляющий стор сможет пытаться засетить такое такое же значение. В этом случае ивент от семпла будет тригерится (так как там явная запись когда вызван тригер в clock, сходи в source и возьми его значение), а стор обновляться не будет.

Попробовал изобразить на минимальном примере

https://share.effector.dev/PZeadFTF
источник

S

Stanislav in ☄️ effector
да, вижу. Вторая четверка пропущена.
источник
2020 November 28

AS

Alexey Shvorak in ☄️ effector
Всем привет. Нужна ваша помощь.
Хочу реализовать процесс инициализации приложения который требует обязательного выполнения нескольких эффектов
При этом хотелось бы на выходе получить стор или событие

Например:
export const $loaded = preload(
   effect1,
   effect2,
   effect3,
   effect4,
)


При этом в идеале понимать прогресс загрузки для сплэш скрина загрузки

Прошу подскажите направление
источник

AO

Aleksandr Osipov in ☄️ effector
Promise.all?
источник

AO

Aleksandr Osipov in ☄️ effector
Завернуть все эффекты в другой, содержащий promise all
источник

ⓂК

Ⓜ️ихаил Ковальчук... in ☄️ effector
а combine из effectN.pending не подойдет?
источник

AS

Alexey Shvorak in ☄️ effector
Ⓜ️ихаил Ковальчук
а combine из effectN.pending не подойдет?
combine же вроде только со сторами работает
источник

ⓂК

Ⓜ️ихаил Ковальчук... in ☄️ effector
pending - стор
источник

AS

Alexey Shvorak in ☄️ effector
Aleksandr Osipov
Завернуть все эффекты в другой, содержащий promise all
Ну примерно такое решение и пришло в голову. Я подумал возможно есть решение получше
источник

ip

ivan posokhin in ☄️ effector
у меня в init:

sample({
 source: [fx1.pending, fx2.pending],
 fn: states => states.some(Boolean),
 target: $pending,
})
источник

ip

ivan posokhin in ☄️ effector
Переслано от ivan posokhin
$pending.on(merge([fx1.pending, fx2.pending]), (_, isLoading) => isLoading))
источник

ip

ivan posokhin in ☄️ effector
Переслано от ivan posokhin
зачем в семпл что-то городить?
источник

ip

ivan posokhin in ☄️ effector
один из эффектов завершится и затрёт твой $pending значением false, хотя другие эффекты ещё будут в процессе выполнения
источник

AS

Alexey Shvorak in ☄️ effector
Спасибо ребят, с этим уже можно работать )
источник