Size: a a a

2020 September 17

TP

Taras Postolyuk in ☄️ effector
Кстате да, прикольная идея)
источник

🚀🚀

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

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Taras Postolyuk
Кстате да, прикольная идея)
настолько прикольная, что есть из коробки https://effector.now.sh/docs/api/effector/effect#inflight
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Vasili
т.е.
const fx = createEffect(async () => {});
globalCounter.on(fx.finally, (s) => s - 1);
но да, если задаться целью написать это самому, то реализуется оно примерно так
источник

V

Vasili in ☄️ effector
но это для подсчета количества запусков одного эффекта.. да? а у меня количество нескольких... но можно и скомбинировать
источник

TP

Taras Postolyuk in ☄️ effector
Оу, не заметил когда читал
источник

V

Vasili in ☄️ effector
а +=1 куда запихнуть? через prepend?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Vasili
а +=1 куда запихнуть? через prepend?
нет, чтобы подписаться на начало эффекта достаточно передать в on его самого
источник

V

Vasili in ☄️ effector
а, ну да, логично...
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
counter
 .on(fx, x => x + 1)
 .on(fx.finally, x => x - 1)
источник

c⁣

createStore<🦉>... in ☄️ effector
Vasili
а, ну да, логично...
Создай домен, от него создай все эффекты. А на каждый эффект подпиши свой стор через хук домена
источник

c⁣

createStore<🦉>... in ☄️ effector
Так ты подпишешь все эффекты автоматом
источник

V

Vasili in ☄️ effector
о, блин, вообще отлично
источник

V

Vasili in ☄️ effector
я уже думал писать функцию, которая будет подписываться
источник

V

Vasili in ☄️ effector
с доменами еще не разбирался
источник

V

Vasili in ☄️ effector
я так понимаю, что они в основном для SSR? но SSR у меня пока что не планируется
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Vasili
я так понимаю, что они в основном для SSR? но SSR у меня пока что не планируется
два кейса: ssr и массовое применение обработок
источник

🚀🚀

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

c⁣

createStore<🦉>... in ☄️ effector
domain.onCreateEffect(fx => {
 $effects
   .on(fx.inFlight, (all, current) => ({
     ...all,
     [fx.sid]: current
   }))
})

$inFlight = $effects.map(
 all =>
   Array.from(Object.values(all))
     .reduce((c, a) => c+a, 0)
)
источник

V

Vasili in ☄️ effector
я везде вместо import { createEffect } from "effector" пишу import { craeteEffect } from "./myDomain"?
источник