Size: a a a

2020 June 26

AO

Aleksandr Osipov in ☄️ effector
🚀🔬 🚀🔬🚀🔬
а если переместить этот код внутрь .on, то изменений по прежнему же быть не должно?

let sideEffect = 0

const run = createEvent()
run.watch(() => {
 sideEffect += 1
})

const wrap = createEvent()

const x = createStore(0)
 .on(wrap, () => {
   run()
     console.log(sideEffect)
   // => 1
 })

wrap()
Спасибо, кажется понял. В документации на мой взгляд надо дополнить исходную фразу примером
источник

AO

Aleksandr Osipov in ☄️ effector
С другой стороны а зачем вызывать события в .on?
источник

AO

Aleksandr Osipov in ☄️ effector
Это просто защита своего рода ?
источник

🚀🚀

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

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Aleksandr Osipov
С другой стороны а зачем вызывать события в .on?
эта возможность обеспечена семантикой javascript и поэтому нужно либо явно запретить это через throw (как это делает редух), либо иметь с этим дело
источник

AO

Aleksandr Osipov in ☄️ effector
Вот, теперь понял окончательно, спасибо ещё раз
источник

AO

Aleksandr Osipov in ☄️ effector
🚀🔬 🚀🔬🚀🔬
эта возможность обеспечена семантикой javascript и поэтому нужно либо явно запретить это через throw (как это делает редух), либо иметь с этим дело
Речь про throw при getState в редьюсере в редаксе?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
ахаха, я эту дичь ещё не застал 😃😃
источник

AO

Aleksandr Osipov in ☄️ effector
источник

🚀🚀

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

ЕГ

Егор Гуща in ☄️ effector
🚀🔬 🚀🔬🚀🔬
эта возможность обеспечена семантикой javascript и поэтому нужно либо явно запретить это через throw (как это делает редух), либо иметь с этим дело
но ведь
1) throw не решениее проблемы
2) throw - сайд-эффек
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Егор Гуща
но ведь
1) throw не решениее проблемы
2) throw - сайд-эффек
ога)
источник

🚀🚀

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

AO

Aleksandr Osipov in ☄️ effector
А точно, не туда смотрел
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Aleksandr Osipov
Речь про throw при getState в редьюсере в редаксе?
к слову throw при getState тут как раз из-за гонок данных, которые есть даже когда у тебя всего один стор и мейнтейнер редух про это в курсе
источник

🚀🚀

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

🚀🚀

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

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Aleksandr Osipov
Спасибо, кажется понял. В документации на мой взгляд надо дополнить исходную фразу примером
согласен, буду признателен за помощь с этим
источник

🚀🚀

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

🚀🚀

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