Size: a a a

React: русскоязычное сообщество

2020 September 05

SC

Serega Carbon in React: русскоязычное сообщество
Aleksandr
у тебя плагин глючит =)
возможно потому что он в яндекс браузере?))
источник

A

Aleksandr in React: русскоязычное сообщество
Serega Carbon
возможно потому что он в яндекс браузере?))
вохможно хД У меня не активен, пишет, не использует
источник

SC

Serega Carbon in React: русскоязычное сообщество
Aleksandr
вохможно хД У меня не активен, пишет, не использует
ну в дев тулзах у меня во вкладке реакта даже подсвечиваются некоторые комоненты и вот это в консоле пишет:
источник

A

Aleksandr in React: русскоязычное сообщество
а они вроде хотели его подключать, мож что то и вошло в прод
источник

SC

Serega Carbon in React: русскоязычное сообщество
Aleksandr
а они вроде хотели его подключать, мож что то и вошло в прод
скорее что то пошло не так)))
источник

РК

Родион Кухтий... in React: русскоязычное сообщество
Ребят, скажите нормально будет для next.js приложения написать свою интернализацию, обернув приложение в контекст, и там уже писать логику?
источник
2020 September 06

D

Dima in React: русскоязычное сообщество
Родион Кухтий
Ребят, скажите нормально будет для next.js приложения написать свою интернализацию, обернув приложение в контекст, и там уже писать логику?
react-intl
источник

eu

emelya ups in React: русскоязычное сообщество
Курсы по программированию/дизайну по 300р, осталось 2 места @kursi500
источник

i4

ichi 404 in React: русскоязычное сообщество
Могу провести курс по программированию за 100000р
источник

i4

ichi 404 in React: русскоязычное сообщество
Но только небольшой, занятий на 3-5
источник

🧨م

🧨 الكسندر ماليشكين 🕌... in React: русскоязычное сообщество
emelya ups
Курсы по программированию/дизайну по 300р, осталось 2 места @kursi500
готов за пивко послушать. я буду пить, а вы - рассказывать
источник

DK

Dmitriy Kurovsky in React: русскоязычное сообщество
Ребят, привет. Столкнулся с очень неудобной проблемой. У меня есть кастомный хук, отвечающий за авторизацию (useAuth), он предоставляет функции login и register, и есть отдельный хук useErrorHandler, он предоставляет функцию для обработки ошибок. Дело в том, что оба эти хука используют друг друга. Например, в функциях login / register используется отлов ошибок, а в хуке обработки ошибок используется и вызывается функция logout (из хука авторизации) при коде ошибки UNAUTHORIZED. В итоге имеем такую картину:

/* useA.js */

const .... {
   const {handleError} = useB();
   
   ....
}


/* useB.js */

const .... {
   const {logout} = useA();

   ....
}

Это приводит к бесконечному циклу, так как хуки бесконечно вызывают друг дурга.
Как с точки зрения архитектуры лучше разрешить этот вопрос?
Заранее спасибо!
источник

Д

Дмитрий in React: русскоязычное сообщество
Dmitriy Kurovsky
Ребят, привет. Столкнулся с очень неудобной проблемой. У меня есть кастомный хук, отвечающий за авторизацию (useAuth), он предоставляет функции login и register, и есть отдельный хук useErrorHandler, он предоставляет функцию для обработки ошибок. Дело в том, что оба эти хука используют друг друга. Например, в функциях login / register используется отлов ошибок, а в хуке обработки ошибок используется и вызывается функция logout (из хука авторизации) при коде ошибки UNAUTHORIZED. В итоге имеем такую картину:

/* useA.js */

const .... {
   const {handleError} = useB();
   
   ....
}


/* useB.js */

const .... {
   const {logout} = useA();

   ....
}

Это приводит к бесконечному циклу, так как хуки бесконечно вызывают друг дурга.
Как с точки зрения архитектуры лучше разрешить этот вопрос?
Заранее спасибо!
Привет,  у тебя register и login в одно хуке ? Как понимаю там ещё и logout, тебе каждую часть логики надо инкапсулировать.
источник

DK

Dmitriy Kurovsky in React: русскоязычное сообщество
Дмитрий
Привет,  у тебя register и login в одно хуке ? Как понимаю там ещё и logout, тебе каждую часть логики надо инкапсулировать.
Да, там три функции в одном хуке. Лучше разнести по разным хукам?
источник

DK

Dmitriy Kurovsky in React: русскоязычное сообщество
Хотя даже в таком случае отдельный хук logout будет хэндлить ошибки из хука errorHandler, и продолжится этот бесконнчный вызов..
источник

Д

Дмитрий in React: русскоязычное сообщество
Dmitriy Kurovsky
Да, там три функции в одном хуке. Лучше разнести по разным хукам?
Конечно, ты так будешь иметь контроль над каждой частью и с такими проблемами не будешь сталкиваться.
источник

Д

Дмитрий in React: русскоязычное сообщество
Dmitriy Kurovsky
Хотя даже в таком случае отдельный хук logout будет хэндлить ошибки из хука errorHandler, и продолжится этот бесконнчный вызов..
При таких условиях у тебя тогда хук errorHandler где то написано криво, возможно типы ошибок распределил не правильно, для каждого отдельного хука можно использовать префикс с названием
источник

DK

Dmitriy Kurovsky in React: русскоязычное сообщество
Дмитрий
При таких условиях у тебя тогда хук errorHandler где то написано криво, возможно типы ошибок распределил не правильно, для каждого отдельного хука можно использовать префикс с названием
Не много не понял тезиса. Я чуть более проясню ситуацию. Использую apollo, с почти любых запросов (а запросы делаются с любых компонентов) мы можем получить ошибку UNAUTHORIZED, поэтому я написал хук useErrorHandler и ошибка запроса сразу летит в этот хук (условно так - .catch(err => handleError(err) ) и он думает что с ней делать. Если допустим у нас есть токен, но я UNAUTHORIZED, то условно вызываем logout (суть что мы берем функцию из хука авторизации). Я думаю, такая обработка наиболее логична, не понятно, что значит «распределил типы ошибок не правильно»?
источник

Д

Дмитрий in React: русскоязычное сообщество
Dmitriy Kurovsky
Не много не понял тезиса. Я чуть более проясню ситуацию. Использую apollo, с почти любых запросов (а запросы делаются с любых компонентов) мы можем получить ошибку UNAUTHORIZED, поэтому я написал хук useErrorHandler и ошибка запроса сразу летит в этот хук (условно так - .catch(err => handleError(err) ) и он думает что с ней делать. Если допустим у нас есть токен, но я UNAUTHORIZED, то условно вызываем logout (суть что мы берем функцию из хука авторизации). Я думаю, такая обработка наиболее логична, не понятно, что значит «распределил типы ошибок не правильно»?
у тебя не просто ошибка UNAUTHORIZED должна быть, а с описанием места с которого она прилетела, т.е. будет примерно следующие { errorType: UNAUTHORIZED, componentName: 'logout' }, и в своём useErrorHandler ставить обработчик if (errorType === UNATHORIZED && componentName === 'logout') { делаешь определённое действие } и так на все остальные случае
источник

DK

Dmitriy Kurovsky in React: русскоязычное сообщество
Хорошо, большое спасибо за помощь.
источник