Size: a a a

2020 July 06

m

mg901 in ☄️ effector
@sovasergey
condition({
 source: trigger,
 if: (string) => string.length > 8,
 then: longString,
 else: shortString,
});
source может быть любой юнит или только event?
источник

c⁣

createStore<🦉>... in ☄️ effector
mg901
@sovasergey
condition({
 source: trigger,
 if: (string) => string.length > 8,
 then: longString,
 else: shortString,
});
source может быть любой юнит или только event?
Любой
источник

m

mg901 in ☄️ effector
источник

c⁣

createStore<🦉>... in ☄️ effector
mg901
@sovasergey
condition({
 source: trigger,
 if: (string) => string.length > 8,
 then: longString,
 else: shortString,
});
source может быть любой юнит или только event?
источник

DS

Dmitriy Shuleshov in ☄️ effector
mg901
@sovasergey
condition({
 source: trigger,
 if: (string) => string.length > 8,
 then: longString,
 else: shortString,
});
source может быть любой юнит или только event?
Кстати теперь можно split для такого юзать.
источник

c⁣

createStore<🦉>... in ☄️ effector
Dmitriy Shuleshov
Кстати теперь можно split для такого юзать.
Только по другому совсем
источник

DS

Dmitriy Shuleshov in ☄️ effector
createStore<🦉> ⁣
Только по другому совсем
Ну с той же целью.
источник

c⁣

createStore<🦉>... in ☄️ effector
Dmitriy Shuleshov
Ну с той же целью.
Так можно про все сказать
источник

m

mg901 in ☄️ effector
Dmitriy Shuleshov
Кстати теперь можно split для такого юзать.
Спасибо, Дим.
источник

DS

Dmitriy Shuleshov in ☄️ effector
ой фсе, ладно кондишн будет короче)
источник

NK

ID:0 in ☄️ effector
Сергей Сова (@sovasergey) целую неделю рассказывал про архитектуру современного фронтенда на реакте, FeatureSlices и Effector в twitter-канале jsunderhood...

Я собрал всё это в twitter-коллекцию. Теперь вы можете почитать все твиты за неделю с ответами в плоском виде: твит со ссылкой на коллекцию
источник

DS

Dmitriy Shuleshov in ☄️ effector
ID:0
effector 21.0.0effector 21.0.0

Add object form of split for pattern-matching without additional forwards
Try it

You can match directly to store api as well:
Try it

split in documentation

thanks @doasync for amazing research

Merge effector/fork into effector. Now all methods required for SSR are exported from the library itself, making effector/fork an alias
Make Scope type alias for Fork
Add support for es modules: import {createStore} from 'effector/effector.mjs'
Effect without a handler now throws an error during a call instead of calling console.error with undefined return, which was violating the type of effect
Remove restore aliases, event.filter(fn) alias for event.filterMap(fn), greedy in sample as separate last argument and unused blocks and Kind


effector-react 21.0.0effector-react 21.0.0

Add support for es modules
Remove experimental Gate.isOpen plain property, which was incompatibile with concurrent mode and ssr


effector-vue 21.0.0effector-vue 21.0.0

Add support for es modules
@ZeroBias а не рассматривался вариант сделать объектную форму split по принципу sample?
Если не предоставляются cases то возвращать обьект ивентов? Тогда можно было было полностью покрыть все возможности split объектной формой.
источник

𝐁𝐏

𝐁𝐨𝐡𝐝𝐚𝐧 𝐏𝐞𝐭𝐫𝐨𝐯... in ☄️ effector
ID:0
Сергей Сова (@sovasergey) целую неделю рассказывал про архитектуру современного фронтенда на реакте, FeatureSlices и Effector в twitter-канале jsunderhood...

Я собрал всё это в twitter-коллекцию. Теперь вы можете почитать все твиты за неделю с ответами в плоском виде: твит со ссылкой на коллекцию
То что effector основывался на концепциях lisp напомнило о парадоксе Блаба.
Так же узнал о ходе развития effector, что ранее было интересно, но не было времени вычитать в истории чата.
Спасибо!
источник

DL

Daniil Loban in ☄️ effector
🚀🔬 🚀🔬🚀🔬
тут все рассчёты в каждом кадре выполняются через эффектор, включая счётчик fps
👍
источник

AO

Aleksandr Osipov in ☄️ effector
Dmitriy Shuleshov
@ZeroBias а не рассматривался вариант сделать объектную форму split по принципу sample?
Если не предоставляются cases то возвращать обьект ивентов? Тогда можно было было полностью покрыть все возможности split объектной формой.
вот было бы прикольно
источник

AO

Aleksandr Osipov in ☄️ effector
поддержу
источник

AO

Aleksandr Osipov in ☄️ effector
𝐁𝐨𝐡𝐝𝐚𝐧 𝐏𝐞𝐭𝐫𝐨𝐯
То что effector основывался на концепциях lisp напомнило о парадоксе Блаба.
Так же узнал о ходе развития effector, что ранее было интересно, но не было времени вычитать в истории чата.
Спасибо!
А что за парадокс?
источник

𝐁𝐏

𝐁𝐨𝐡𝐝𝐚𝐧 𝐏𝐞𝐭𝐫𝐨𝐯... in ☄️ effector
Aleksandr Osipov
А что за парадокс?
источник

F

Frenky in ☄️ effector
Наверно странный вопрос, но попробую.

Учусь, пишу проект одновременно в двух вариантах на эффекторе и редаксе

Рубеж который я реализовал на эффекторе, я уже не могу несколько дней сделать на редаксе при использовании одной и той же логики(подхода) и апи слоя

Вопрос: правильно ли я понимаю что

sample({ source: getTikets, clock: merge([sometningEvent, getTikets.fail]), target: getTickets, })

Возвращает, что то вроде промисса где содержатся все ответы и потом только кладёт в стор, поэтому нет ререндера после каждого запроса?

Что является сейчас у меня проблемой в редаксе (в виде множества ререндеров после каждого запроса) и мне там самому нужно додумать эту функцию и написать ее в апи слой?
источник

AO

Aleksandr Osipov in ☄️ effector
Frenky
Наверно странный вопрос, но попробую.

Учусь, пишу проект одновременно в двух вариантах на эффекторе и редаксе

Рубеж который я реализовал на эффекторе, я уже не могу несколько дней сделать на редаксе при использовании одной и той же логики(подхода) и апи слоя

Вопрос: правильно ли я понимаю что

sample({ source: getTikets, clock: merge([sometningEvent, getTikets.fail]), target: getTickets, })

Возвращает, что то вроде промисса где содержатся все ответы и потом только кладёт в стор, поэтому нет ререндера после каждого запроса?

Что является сейчас у меня проблемой в редаксе (в виде множества ререндеров после каждого запроса) и мне там самому нужно додумать эту функцию и написать ее в апи слой?
На счет промисов - неверно, внутри эффектора нет никаких промисов, sample лишь откладыает вызов target  до момента вызова clock и передаст туда данные из source актуальные на момент вызова clock-ка
источник