Size: a a a

2020 August 14

AP

Andrey Ponomarenko in ☄️ effector
типо хелпер просто сделать?
источник

AO

Aleksandr Osipov in ☄️ effector
и явно в них значение стора передавать
источник

AO

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

ei

export default - зло... in ☄️ effector
Andrey Ponomarenko
по сути откуда угодно должна быть возможность достать элемент
const mapIdToItem = store.map(/* в обьект */)

mapIdToItem[id]
источник

AO

Aleksandr Osipov in ☄️ effector
export default - зло is the side effect
const mapIdToItem = store.map(/* в обьект */)

mapIdToItem[id]
ну юудет работать же
источник

AO

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

ei

export default - зло... in ☄️ effector
Aleksandr Osipov
mapIdToItem это Store
Ну да (
источник

ei

export default - зло... in ☄️ effector
Это только во вью
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Andrey Ponomarenko
похоже что это почти то что нужно, только мне бы это сделать без хука, чтобы не только в хук компонентах его вызывать
а где ещё?
источник

AP

Andrey Ponomarenko in ☄️ effector
🚀🔬 🚀🔬🚀🔬
а где ещё?
если конкретно, то я в приложухе RN записываю историю экранов чувака, и не вдаваясь в детали там лежит id экрана который создает библиотека, и имена экранов которые я указываю.

И это юзается просто везде, в бизнес логике, в статистике, в sentry ошибках
источник

AP

Andrey Ponomarenko in ☄️ effector
когда я реализовывал эту штуку у меня снесло крышу наверное, и это сейчас жирный такой синглтон с массивом и парой методов.

Ну я решил сделать н о рм а л ь но
источник

AP

Andrey Ponomarenko in ☄️ effector
:DD
источник

🚀🚀

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

Ну я решил сделать н о рм а л ь но
ну если в бизнес-логику информацию из стора можно подключить через sample, то в sentry наверное проще заюзать getState
источник

AP

Andrey Ponomarenko in ☄️ effector
вот кстати с сентри там как раз и может случиться гонка.

В зависимости от того как на экране вылезет ошибка экран может оказаться в сторе на момент формирования и отправки ошибки, а может и нет
источник

AP

Andrey Ponomarenko in ☄️ effector
но наверное пофиг, там стек-трейс и контекст показывается с кодом
источник

AP

Andrey Ponomarenko in ☄️ effector
я конечно же не подумаю что ошибка была на другом экране
источник

🚀🚀

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

const sendStatsFx = createEffect()

const sendScreenStatsFx = attach({
 source: $store,
 effect: sendStatsFx,
 mapParams: (id, list) => list.find(el => el.id === id)
})

sendScreenStatsFx(1)
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
то есть эффекты созданные через attach — это возможность дождаться стабилизации состояния стора source а затем вызвать effect
источник

AP

Andrey Ponomarenko in ☄️ effector
понял, сейчас доку еще гляну и попробую чекнуть
источник

AP

Andrey Ponomarenko in ☄️ effector
спасибо 🙏
источник