Size: a a a

2020 October 21

NT

Nikita Tkachuk in ☄️ effector
а есть красивый способ такой кейс решить?
guard({
 source: fetchAccount.map<string>(({ accountNumber }) => accountNumber),
 filter: (accountNumber) => !!$accountsByNumber.getState()[accountNumber],
 target: fetchAccountFx,
})

уже не первый раз проблема с тем, чтобы в guard сделать фильтр по стору+параметру из source
источник

c⁣

createStore<🦉>... in ☄️ effector
Nikita Tkachuk
а есть красивый способ такой кейс решить?
guard({
 source: fetchAccount.map<string>(({ accountNumber }) => accountNumber),
 filter: (accountNumber) => !!$accountsByNumber.getState()[accountNumber],
 target: fetchAccountFx,
})

уже не первый раз проблема с тем, чтобы в guard сделать фильтр по стору+параметру из source
Семпл
источник

NT

Nikita Tkachuk in ☄️ effector
а, ну и fetchAccountFx ожидает тех же параметров что и fetchAccount
т.е. сначала преобразую данные чтобы фильтр нормально отработал, а потом их преобразую обратно чтобы fetchAccount их получил в нужном виде
источник

DS

Dmitriy Shuleshov in ☄️ effector
Nikita Tkachuk
а есть красивый способ такой кейс решить?
guard({
 source: fetchAccount.map<string>(({ accountNumber }) => accountNumber),
 filter: (accountNumber) => !!$accountsByNumber.getState()[accountNumber],
 target: fetchAccountFx,
})

уже не первый раз проблема с тем, чтобы в guard сделать фильтр по стору+параметру из source
@ZeroBias #article #composition
источник

YL

Yan👀 Lobaty in ☄️ effector
guard({
source: sample({
source: $accountsByNumber,
clock: fetchAccount,
fn: (source, {accountNumber}) => source[accountNumber],
}),
filter: Boolean,
target: fetchAccountFx
})
источник

NT

Nikita Tkachuk in ☄️ effector
Yan👀 Lobaty
guard({
source: sample({
source: $accountsByNumber,
clock: fetchAccount,
fn: (source, {accountNumber}) => source[accountNumber],
}),
filter: Boolean,
target: fetchAccountFx
})
в target забыли prepend дописать
источник

YL

Yan👀 Lobaty in ☄️ effector
Nikita Tkachuk
в target забыли prepend дописать
зачем?
источник

NT

Nikita Tkachuk in ☄️ effector
Dmitriy Shuleshov
@ZeroBias #article #composition
это я должен был понять что-то или зеробиас?)
источник

DS

Dmitriy Shuleshov in ☄️ effector
Nikita Tkachuk
это я должен был понять что-то или зеробиас?)
Сорян, это я Диме
источник

YL

Yan👀 Lobaty in ☄️ effector
можешь код fn на свое усмотрение поменять идея главную я тебе дал)
источник

NT

Nikita Tkachuk in ☄️ effector
Yan👀 Lobaty
зачем?
он ждет только accountNumber
источник

YL

Yan👀 Lobaty in ☄️ effector
ну я надеюсь ты с этим справишься  :)
источник

DS

Dmitriy Shuleshov in ☄️ effector
Nikita Tkachuk
это я должен был понять что-то или зеробиас?)
Но можешь по этим тегам пройтись и увидеть что решения данных кейсов - типичны
источник

NT

Nikita Tkachuk in ☄️ effector
Yan👀 Lobaty
ну я надеюсь ты с этим справишься  :)
я ж спрашивал красивый способ ) такого франкенштейна и я могу написать)
источник

YL

Yan👀 Lobaty in ☄️ effector
дать более полный пейлоад в fn и filter предикат вместо булеана
источник

YL

Yan👀 Lobaty in ☄️ effector
это не франкенштейн
источник

YL

Yan👀 Lobaty in ☄️ effector
Nikita Tkachuk
я ж спрашивал красивый способ ) такого франкенштейна и я могу написать)
ну и красота заключается в проектировании
операторы позволяют делать связи между сущностями более легковесными и сконцентрироваться на проектировании а не сделать проектирование за тебя)
источник

NT

Nikita Tkachuk in ☄️ effector
мне кажется верхний варик намного понятнее и читабельнее, но там getState(

может в гварде не хватает чего-то в апи для кейсов когда нужен и внешний стор и параметры из source?
источник

D

Draft in ☄️ effector
Nikita Tkachuk
мне кажется верхний варик намного понятнее и читабельнее, но там getState(

может в гварде не хватает чего-то в апи для кейсов когда нужен и внешний стор и параметры из source?
верхний не правильный
источник

NT

Nikita Tkachuk in ☄️ effector
Draft
верхний не правильный
оу, почему?)
источник