Size: a a a

2020 September 30

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
не линейная
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
динамически формируется массив (double linked list если точнее) с реквестами, с одного конца накидываем новые, с другого снимаем готовые
источник

AO

Aleksandr Osipov in ☄️ effector
я просто не могу никак понять что у автора за проблема, обрабатывать резултаты типо надо в определенном порядке?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
да
источник

G

GG in ☄️ effector
🚀🔬 🚀🔬🚀🔬
const sequenceReady = guard(pendingResults, {
 filter: list => list.length > 0 && list[0].status !== 'pending'
})
Ещё тут скорее всего не ноль должен быть, а константа, а конкретнее кол-во еффектов, чтоб это запустить только тогда когда все выполнилось, а не на каждый выполненный еффект это тригерить
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
GG
Ещё тут скорее всего не ноль должен быть, а константа, а конкретнее кол-во еффектов, чтоб это запустить только тогда когда все выполнилось, а не на каждый выполненный еффект это тригерить
ну я исходил из того, что если первый элемент pending то весь остальной лист ждёт его

так то тогда не константа, а slice(0, BATCH).every(...)
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
но смысл такой, да)
источник

G

GG in ☄️ effector
Супер 👍. Спасибо. Попробую реализовать, через пару часов отпишусь
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
место, которое требует внимания — процесс обновления pendingResults от эвента sequenceReady (чтобы убрать готовые)
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
там как бы петля получается — выполнение условия в сторе приводит к запуску эвента, который обновляет сам стор так, чтобы условие выполняться перестало
источник

yv

yumaa verdin in ☄️ effector
GG
корзина хранится на беке, есть три мметода, add, remove, update, все возвразщают одну структур, собственно саму корзину, апдейт происходит по таймеру, add и remove делает пользователь. Проблема в том, что допустим сперва отправляется update, и тут же может add тоже следом улетает,   а ответ приходит первым от add, там есть корзина уже с одим айтемом, а потом следом с опозданием приходит update, а там на тот момент еще нечего не было, и корзина пустая
по идее надо просто игнорировать результаты от предыдущих эффектов, аля TAKE_LAST у меня, только применительно к нескольким эффектам сразу
источник

G

GG in ☄️ effector
yumaa verdin
по идее надо просто игнорировать результаты от предыдущих эффектов, аля TAKE_LAST у меня, только применительно к нескольким эффектам сразу
Можешь скинуть свою реализацию?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
yumaa verdin
по идее надо просто игнорировать результаты от предыдущих эффектов, аля TAKE_LAST у меня, только применительно к нескольким эффектам сразу
их нельзя игнорировать, их нужно запоминать и учитывать в логике их статус
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
это ключевое различие
источник

yv

yumaa verdin in ☄️ effector
🚀🔬 🚀🔬🚀🔬
их нельзя игнорировать, их нужно запоминать и учитывать в логике их статус
зачем их учитывать, если каждый из трёх эффектов возвращает одну и ту же структуру? нужно взять только ответ от последнего вызванного
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
нет
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
задача — применить результаты выполнения эффектов в правильном порядке
источник

G

GG in ☄️ effector
🚀🔬 🚀🔬🚀🔬
их нельзя игнорировать, их нужно запоминать и учитывать в логике их статус
Это да, можно и так, но дальше логика пойдет такая, что последний возьмём, а все предыдущие проигнорируем
источник

G

GG in ☄️ effector
Так что вы оба правы
источник

yv

yumaa verdin in ☄️ effector
🚀🔬 🚀🔬🚀🔬
задача — применить результаты выполнения эффектов в правильном порядке
если нужно применить в правильном порядке — то банально таймстемп берём и вставляем в лист результатов в нужное место все пришедшие ответы
источник