Size: a a a

2020 June 04

AM

Alexey Malinin in ☄️ effector
🦜
useStore использует реакт хуки, которые срабатывают на каждый рендер.

combine - функция, вызов которой возвращает новый стор.

совмести эту информацию и поймешь, где проебался
useState -  является хуком, который берёт первое значение и потом его игнорирует. ВНЕЗАПНО это задокументировано и вопросов о том, почему не меняется значение стэйта при изменении параметра не возникает
источник

🦜

🦜 in ☄️ effector
Alexey Malinin
useState -  является хуком, который берёт первое значение и потом его игнорирует. ВНЕЗАПНО это задокументировано и вопросов о том, почему не меняется значение стэйта при изменении параметра не возникает
ты рофлишь сейчас?
источник

АБ

Александр Бакиматов... in ☄️ effector
Alexey Malinin
useState -  является хуком, который берёт первое значение и потом его игнорирует. ВНЕЗАПНО это задокументировано и вопросов о том, почему не меняется значение стэйта при изменении параметра не возникает
ты отдаешь хуку создание новой сущности на каждый рендер, а потом удивляешься почему хук это не предотвращает?
источник

KS

Kirill Suvorov in ☄️ effector
Всем привет!
Подскажите пожалуйста, можно ли где-то посмотреть хорошие практики по тестированию с эффектором?

У меня в проекте довольно много логики по реагированию на различные эвенты. Но при написании тестов есть проблемы:
1) В интеграционных тестах компонентов нужная логика не успевает отрабатывать. Можно ли как-то дожидаться их?
2) среда ругается, что изменения ведущие к обновлению страницы должны быть заключены в act. Но эти изменения происходят вне теста и порой даже после последней строки в тесте. Как это можно исправить?
источник

🦜

🦜 in ☄️ effector
Kirill Suvorov
Всем привет!
Подскажите пожалуйста, можно ли где-то посмотреть хорошие практики по тестированию с эффектором?

У меня в проекте довольно много логики по реагированию на различные эвенты. Но при написании тестов есть проблемы:
1) В интеграционных тестах компонентов нужная логика не успевает отрабатывать. Можно ли как-то дожидаться их?
2) среда ругается, что изменения ведущие к обновлению страницы должны быть заключены в act. Но эти изменения происходят вне теста и порой даже после последней строки в тесте. Как это можно исправить?
Хотя бы написал, чем тестируешь. Скинул бы код тестов
источник

🦜

🦜 in ☄️ effector
Kirill Suvorov
Всем привет!
Подскажите пожалуйста, можно ли где-то посмотреть хорошие практики по тестированию с эффектором?

У меня в проекте довольно много логики по реагированию на различные эвенты. Но при написании тестов есть проблемы:
1) В интеграционных тестах компонентов нужная логика не успевает отрабатывать. Можно ли как-то дожидаться их?
2) среда ругается, что изменения ведущие к обновлению страницы должны быть заключены в act. Но эти изменения происходят вне теста и порой даже после последней строки в тесте. Как это можно исправить?
на твои два вопроса ответ — можно
источник

🦄

🦄 in ☄️ effector
🦜
ты рофлишь сейчас?
почему он рофлит? он же про useState.
источник

R

Ruslan 🌀 in ☄️ effector
Alexey Malinin
Увидел проблему => залатал локально у себя и обратился к сообществу с просьбой помочь. Сообщество подсказало, где ошибка. О том, что “у других не отваливается” можно узнать лишь спросив. Где я неправ в своих действиях?
не следует вообще что-то создавать при каждом рендере, это в доках по реакту написано
источник

AM

Alexey Malinin in ☄️ effector
Ruslan 🌀
не следует вообще что-то создавать при каждом рендере, это в доках по реакту написано
Это то понятно. Я просто не знал, что задавать тут вопросы с очевидной ошибкой приводят к крайне адекватной реакции 🙂
источник

TK

Tauka Kunzhol in ☄️ effector
🦄
почему он рофлит? он же про useState.
выполнение выражений для вычисления аргументов функций происходит всегда раньше выполнения самой функции
источник

TK

Tauka Kunzhol in ☄️ effector
ниче такого, я и сам раньше спотыкался об это
источник

🦄

🦄 in ☄️ effector
Tauka Kunzhol
выполнение выражений для вычисления аргументов функций происходит всегда раньше выполнения самой функции
вот кусок недавнего реюзабельного каунтера
источник

TK

Tauka Kunzhol in ☄️ effector
🦄
вот кусок недавнего реюзабельного каунтера
все правильно, тут выражением для вычисления аргумента является создание функции

что он и делает на каждый рендер, создает функцию
источник

🦄

🦄 in ☄️ effector
Tauka Kunzhol
все правильно, тут выражением для вычисления аргумента является создание функции

что он и делает на каждый рендер, создает функцию
я сейчас больше про то, что чел не рофлил ))
источник

🦄

🦄 in ☄️ effector
поведение useState не обновит ему ничего и тут он прав.
источник

🦄

🦄 in ☄️ effector
но, про вычисления он ничего не говорил ))
источник

R

Ruslan 🌀 in ☄️ effector
Alexey Malinin
Это то понятно. Я просто не знал, что задавать тут вопросы с очевидной ошибкой приводят к крайне адекватной реакции 🙂
да не парься... чем больше вопросов будешь задавать, тем быстрее всё прояснится... только старайся сначала искать ошибку в своём коде и в своих подходах
источник

KS

Kirill Suvorov in ☄️ effector
🦜
Хотя бы написал, чем тестируешь. Скинул бы код тестов
Я только начал разбираться в тестировании react приложения. В основном пользуюсь react-dom/test-utils, enzyme. Но еще до сих пор плохо понимаю как это делать правильно, поэтому и спрашиваю про хорошие практики.

Могу описать пример:
По нажатию кнопки происходит вызов эффекта. На событие выполнения которого подписан стор для изменения состояния.
Как я понимаю, именно на это изменение и ругается react-dom.
источник

I

Ivan in ☄️ effector
Ruslan 🌀
да не парься... чем больше вопросов будешь задавать, тем быстрее всё прояснится... только старайся сначала искать ошибку в своём коде и в своих подходах
"ошибку в своём коде и в своих подходах"
Ага, а когда так и оказывается, то лучше сразу согласиться, типа "сорян был не прав, только заметил, спасибо!", а не продолжать гнуть свою неправую линию
источник

AM

Alexey Malinin in ☄️ effector
Эмммммммммммммм. Я так и сделал как-бы
источник