Size: a a a

2020 August 18

ei

export default - зло... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
если кто-то из подписчиков во время работы сделает unsubscribe, то массив подписчиков мутируется прямо в середине итерации
Аааа, понял
источник

ei

export default - зло... in ☄️ effector
То есть подписчик внутри себя изменяет массив который там выше по кол стеку итерируется сейчас
источник

ei

export default - зло... in ☄️ effector
Интересно)
источник

АК

Алексей Костюхин... in ☄️ effector
Ребят такой вопрос. Я в компонент header определил store и там же назначил обработчики
как мне в компонент footer получить обработчиков и актуальный store?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
export default - зло is the side effect
То есть подписчик внутри себя изменяет массив который там выше по кол стеку итерируется сейчас
угу, а с точки зрения юзера это будет выглядеть как полная ахинея: абсолютно левые подписчики будут пропущены на основании фазы луны и порядка появления подписок (поэтому когда ты будешь тестировать отдельный модуль — поведение бага изменится)
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Алексей Костюхин
Ребят такой вопрос. Я в компонент header определил store и там же назначил обработчики
как мне в компонент footer получить обработчиков и актуальный store?
import {store} from './header'
источник

ei

export default - зло... in ☄️ effector
Насколько помню, из-за подобных штук, в каких-то алгоритмах итерируются справа налево)
источник

АК

Алексей Костюхин... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
import {store} from './header'
Его предварительно импортировать надо вручную?
источник

ei

export default - зло... in ☄️ effector
export default - зло is the side effect
Насколько помню, из-за подобных штук, в каких-то алгоритмах итерируются справа налево)
Но тут не решение, ведь можно любую отписку оформить
источник

ei

export default - зло... in ☄️ effector
Алексей Костюхин
Ребят такой вопрос. Я в компонент header определил store и там же назначил обработчики
как мне в компонент footer получить обработчиков и актуальный store?
"В компоненте" - это в смысле над компонентом?
источник

ei

export default - зло... in ☄️ effector
Вообще, если нужно уже и футеру, наверное есть смысл выше стор обьявлять, потому что он теперь не только к части ответственной за хедер принадлежит
источник

АК

Алексей Костюхин... in ☄️ effector
Да, прошу прощения. const activeLink = createStore(0);
const Header = () => {}
источник

АБ

Александр Бакиматов... in ☄️ effector
Алексей Костюхин
Его предварительно импортировать надо вручную?
да
источник

АК

Алексей Костюхин... in ☄️ effector
Все разобрался в логике, спасибо)
А как вызывать обработчики в "другом" компоненте?
источник

ei

export default - зло... in ☄️ effector
Алексей Костюхин
Все разобрался в логике, спасибо)
А как вызывать обработчики в "другом" компоненте?
Импортировать ивент нужный, или эффект, и вызвать
источник

АК

Алексей Костюхин... in ☄️ effector
Понял. Кстати. Есть ли разница испортировать не store из createStore, а сразу значение export const active = useStore(active); ?
источник

DS

Dmitriy Shuleshov in ☄️ effector
Алексей Костюхин
Понял. Кстати. Есть ли разница испортировать не store из createStore, а сразу значение export const active = useStore(active); ?
Юзстор это хук. И вызываться должен только внутри реакт компонента
источник

АК

Алексей Костюхин... in ☄️ effector
Dmitriy Shuleshov
Юзстор это хук. И вызываться должен только внутри реакт компонента
Спасибо, переделал мелкий компонент ссылок в хедере с использованием effector, все получилось)
Кстати, заметил интересную вещь. Если мы вызывает обработчик с одним и тем же значением, которое не изменяет state, то effector просто отбрасывает их и ничего не делает
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Алексей Костюхин
Спасибо, переделал мелкий компонент ссылок в хедере с использованием effector, все получилось)
Кстати, заметил интересную вещь. Если мы вызывает обработчик с одним и тем же значением, которое не изменяет state, то effector просто отбрасывает их и ничего не делает
ну да) эффектор ориентирован на значения, поэтому подобные дубликаты отсеиваются автоматически
источник

DS

Dmitriy Shuleshov in ☄️ effector
Блин я ж так же в чат залетел, спасибо что не травили меня! (по крайней мере не сильно) )
источник