Size: a a a

2020 August 08

AV

Alex Vodonaev in ☄️ effector
Dmitriy Shuleshov
Ну и как проверял тоже важно.
Если ты хочешь смотреть, что там в сторе, то делается это так

$store.watch(console.log)
И тут ещё можно упомянуть, что функция в watch вызовется сразу и потом при каждом обновлении стора
источник

M

Miseo in ☄️ effector
Alex Vodonaev
И тут ещё можно упомянуть, что функция в watch вызовется сразу и потом при каждом обновлении стора
Да. Событие же.
источник

fe

from earth in ☄️ effector
А в чём разница между
store.watch(someEffect)

и
sample({ source: store, target: someEffect })

?
источник

MK

Mihail Kuzmin in ☄️ effector
from earth
А в чём разница между
store.watch(someEffect)

и
sample({ source: store, target: someEffect })

?
watch позже сработает, кажется
источник

fe

from earth in ☄️ effector
Правильно ли вообще в watch вызывать эффект?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
from earth
Правильно ли вообще в watch вызывать эффект?
можно в watch, оптимальнее через sample
источник

🚀🚀

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

🚀🚀

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

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
const clickLoad = createEvent()

const url = createStore('')

const request = createEffect()

sample({
 source: url,
 clock: clickLoad,
 target: request
})
источник

fe

from earth in ☄️ effector
🚀🔬 🚀🔬🚀🔬
вообще говоря, разница тут в том что сэмпл позволяет задать условие вызова — clock
Понятно
только "условие" это наверное guard
а clock событие, после которого вызываем эффект
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
да, просто это одно и то же)
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
положить guard в clock это частый приём
источник

fe

from earth in ☄️ effector
А у меня вот такая задачка
два инпута
Когда в одном из них пользовательский ввод, надо сделать запрос и поменять данные во втором
И наоборот
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
input1 → request → input2 типа так?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
то есть первый инпут триггерит запрос а второй подписан на его результаты
источник

fe

from earth in ☄️ effector
🚀🔬 🚀🔬🚀🔬
input1 → request → input2 типа так?
да, но важно что и наоборот тоже должно работать
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
о, вот это уже интересно) а почему так?
источник

🚀🚀

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


так как после апдейта второго инпута пойдёт апдейтиться первый и так по кругу, значит в постановке задачи не хватает пояснения об этом моменте
источник

ф

фильтруй мысли... in ☄️ effector
from earth
Понятно
только "условие" это наверное guard
а clock событие, после которого вызываем эффект
clock - a synchronizing device (as in a computer) that produces pulses at regular intervals
источник

DS

Dmitriy Shuleshov in ☄️ effector
🚀🔬 🚀🔬🚀🔬
положить guard в clock это частый приём
*Нужна статья про композицию
источник