Size: a a a

2020 August 21

ф

фильтруй мысли... in ☄️ effector
Иван
окай. а драфт-стор вот так создавать норм?

const $store = restore(fx, null)
const $form =
$store.map(identity).on(change, ...)
warning: изменение мапнутого стора
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
фильтруй мысли
warning: изменение мапнутого стора
😾
источник

И

Иван in ☄️ effector
фильтруй мысли
warning: изменение мапнутого стора
это локальный кек такой? не вижу warning’ов
источник

🚀🚀

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

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
они ещё приоритетами пугать не начали
источник

И

Иван in ☄️ effector
🚀🔬 🚀🔬🚀🔬
draft стор он не то, чтобы прямо .map, для draft текущий $profile это лишь один из источников апдейтов, поэтому это решается через sample
можно пример?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Иван
окай. а драфт-стор вот так создавать норм?

const $store = restore(fx, null)
const $form =
$store.map(identity).on(change, ...)
const $formDraft = createStore({name: 'guest', age: 18})

sample({
 source: $form,
 clock: openProfileEditor,
 target: $formDraft
})


при срабатывании эвента «открыть редактор профиля» перенести данные из текущего $form в черновик
источник

ф

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

И

Иван in ☄️ effector
🚀🔬 🚀🔬🚀🔬
const $formDraft = createStore({name: 'guest', age: 18})

sample({
 source: $form,
 clock: openProfileEditor,
 target: $formDraft
})


при срабатывании эвента «открыть редактор профиля» перенести данные из текущего $form в черновик
понял
источник

🚀🚀

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

https://github.com/zerobias/effector/blob/master/src/react/__tests__/scopes.test.tsx#L361
источник

🚀🚀

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

c⁣

createStore<🦉>... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
замена хэндлеров нужна чтобы реализовать какую-либо конкретную ситуацию в тесте, но не мокать весь эффект ради неё
а можно так значения для сторов проставлять?

values: new Map([[$store, 123]])
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
да, разумеется
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
кстати при большом количестве сторов/эффектов можно использовать чейнинг

new Map()
 .set($store, 123)
 .set($user, 'alice')
 .set($age, 21)
источник

c⁣

createStore<🦉>... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
кстати при большом количестве сторов/эффектов можно использовать чейнинг

new Map()
 .set($store, 123)
 .set($user, 'alice')
 .set($age, 21)
я как-то упустил это в Map.
спасибо
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
createStore<🦉> ⁣
я как-то упустил это в Map.
спасибо
да я тоже) всё думал зачем методы Map возвращают this, пока не потребовалось 😅
источник

c⁣

createStore<🦉>... in ☄️ effector
я чет сломался ещё больше, я реально забыл, что в Map можно в качестве ключа объекты юзать
источник

c⁣

createStore<🦉>... in ☄️ effector
круто хром отображает Map
источник

AO

Aleksandr Osipov in ☄️ effector
🚀🔬 🚀🔬🚀🔬
кстати при большом количестве сторов/эффектов можно использовать чейнинг

new Map()
 .set($store, 123)
 .set($user, 'alice')
 .set($age, 21)
а не проще ли таплами инициализировать?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Aleksandr Osipov
а не проще ли таплами инициализировать?
ну в этой ситуации они выглядят довольно натянуто
источник