Size: a a a

2020 November 26

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
возврат return это ключевое
это гарантирует что подписка будет всегда одна, а не одна за одной
источник

FA

Fedorchuk Artem in ☄️ effector
🚀🔬 🚀🔬🚀🔬
это гарантирует что подписка будет всегда одна, а не одна за одной
понял, спасибо!
источник

FA

Fedorchuk Artem in ☄️ effector
🚀🔬 🚀🔬🚀🔬
это гарантирует что подписка будет всегда одна, а не одна за одной
источник

FA

Fedorchuk Artem in ☄️ effector
то что нужно
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
ну вот)
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
там проблема была в том, что подписка в useEffect захватывала текущее значение зависимостей из замыкания и эмиттила именно их, после добавления return каждое изменение зависимостей заменяет подписку на новую, которая видит более актуальные значения
источник

FA

Fedorchuk Artem in ☄️ effector
я просто с сокетами до этого не работал и лида нет что б помог как правильно,
искал читал как лучше делать, решил просто в пустом компоненте делать логику с сокетом и его просто вмонтировать в App  что б можно было работать с хуками
источник

FA

Fedorchuk Artem in ☄️ effector
🚀🔬 🚀🔬🚀🔬
там проблема была в том, что подписка в useEffect захватывала текущее значение зависимостей из замыкания и эмиттила именно их, после добавления return каждое изменение зависимостей заменяет подписку на новую, которая видит более актуальные значения
понял!
источник

🦜

🦜 in ☄️ effector
Fedorchuk Artem
я просто с сокетами до этого не работал и лида нет что б помог как правильно,
искал читал как лучше делать, решил просто в пустом компоненте делать логику с сокетом и его просто вмонтировать в App  что б можно было работать с хуками
на самом деле ты можешь все в модель перенести
источник

FA

Fedorchuk Artem in ☄️ effector
🦜
на самом деле ты можешь все в модель перенести
есть где прочитать про это?
я не совсем понимаю как это
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
🦜
на самом деле ты можешь все в модель перенести
я думаю ему сначала стоит просто освоиться) потому что изучать сразу две новые вещи довольно сложно, есть шанс не справиться ни с одной
источник

🦜

🦜 in ☄️ effector
Fedorchuk Artem
есть где прочитать про это?
я не совсем понимаю как это
я могу пример скинуть того, как я делал с json rpc
источник

FA

Fedorchuk Artem in ☄️ effector
скинь пожалуйста, я гляну
источник

FA

Fedorchuk Artem in ☄️ effector
хотя б впоперек прочитаю
источник

🦜

🦜 in ☄️ effector
Fedorchuk Artem
хотя б впоперек прочитаю
источник

FA

Fedorchuk Artem in ☄️ effector
🚀🔬 🚀🔬🚀🔬
я думаю ему сначала стоит просто освоиться) потому что изучать сразу две новые вещи довольно сложно, есть шанс не справиться ни с одной
нынче на джуна возлагают большие дела(
источник

FA

Fedorchuk Artem in ☄️ effector
приходится подстраиваться
источник

FA

Fedorchuk Artem in ☄️ effector
выбора нет
источник

FA

Fedorchuk Artem in ☄️ effector
спасибо!
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Fedorchuk Artem
нынче на джуна возлагают большие дела(
не, я понимаю, поэтому и говорю, что как красиво можно сделать чуть позже, когда хотя бы сокеты не будут вызывать вопросы)

ссылка папуга показывает то, как можно реализовать сокеты по большей части вне реакта, в таком случае ui получается гораздо более легковесным, потому что больше не знает про детали работы с сокетами

если совместить его гист с примером выше, то получится как-то так:

useEffect(() => {
 fetch({
   method: 'binanceApp',
   params: {
     extraExit: true,
     extraPrice: currentPrice,
     extraTaker: takerComission
   }
 })
}, [currentPrice, takerComission])


в итоге компонент знает лишь про то, что существует функция fetch, а что она делает уже не так важно

но в примере есть опциональное усложнение — подразумевается, что нужно ждать ответа через сокет, поэтому то и используется эффект. если ожидание ответного сообщения не требуется, то всё это может выглядеть как-нибудь так:

const fetch = createEvent()

fetch.watch(({method, params}) => {
 socket.emit(method, params)
})
источник