Oleg
для начала можно обернуть в функцию getLocaleShortCode, которая будет то же самое делать)
ну это да. Но это единственный вариант? чет не могу нарыть в доках
Oleg
странно что такая мощная либа и так ограниченно возвращает язык
Margarita
Есть примерно такой код: useEffect(() => { if (obj.foo.bar) setValue('test'); }, [obj.foo.bar, importantVar]); если изменилось значение importantVar, то нужно выполнить setValue, если obj.foo.bar = true. obj.foo может быть undefined, и попытка обратиться к bar выдаст ошибку как можно переписать код, что бы не нужно было подписываться на obj.foo.bar и не было react-hooks/exhaustive-deps? я понимаю, что можно дефолтные значения объекту задать, но интересно, как переписывать места, где не хочется подписываться на изменения чего-либо и не получать warning
wolfe
странно что такая мощная либа и так ограниченно возвращает язык
это не язык, это locale code. в одном locale может быть много languages. типа, en-US en-GB
Oleg
вот слайсом приходится резать
Margarita
ты не хочешь следить за obj.foo.bar,? не передавай его
я его использую и eslint заставляет подписаться
wolfe
вот слайсом приходится резать
сейчас тоже через split [0] работает
Bogdan
я его использую и eslint заставляет подписаться
нажми на лампочку, игнорь, строка подставится
Margarita
нажми на лампочку, игнорь, строка подставится
так хочется правильно все сделать, там типа может быть рассинхрон состояний, если не подписаться
Bogdan
так хочется правильно все сделать, там типа может быть рассинхрон состояний, если не подписаться
если не нужно следить, не передавай, если действие должено выполнятся по изменению importantVar, передавай только его
Margarita
если не нужно следить, не передавай, если действие должено выполнятся по изменению importantVar, передавай только его
вот тут написано, что это не безопасно https://reactjs.org/docs/hooks-faq.html#is-it-safe-to-omit-functions-from-the-list-of-dependencies
Bogdan
вот тут написано, что это не безопасно https://reactjs.org/docs/hooks-faq.html#is-it-safe-to-omit-functions-from-the-list-of-dependencies
например тут не следят за ignore/response/json только за productId, потому что запрос послать нужно, когда поменяется id продукта
Bogdan
все что ты перечислил порождает еффект поэтому следиьт и не нужно
я может просто не понял, я к тому, что если следить не нужно за переменно, то не передавать ее, просто еслинт сует туда все, что ты используешь в ефекте
from
изучать программирование не читая исходников это абсурд
как раз к "изучению" я считаю чтение исходников мало отношения имеет С тем, что это в целом нужно делать и с тем, что в этом бывает большая польза, я согласен
Kevin
https://github.com/pemrouz/proposal-emitter шо пацаны эффектор
Dmitriy
я может просто не понял, я к тому, что если следить не нужно за переменно, то не передавать ее, просто еслинт сует туда все, что ты используешь в ефекте
суть в том что если ты не добавишь в зависимость то приходит в эффект извне то можешь нактнуться на момент когда уже значение переменной поменялось а эффект не в курсах и старое значение юзает
Margarita
например тут не следят за ignore/response/json только за productId, потому что запрос послать нужно, когда поменяется id продукта
мой obj лежит в стейте, не просто переменная, поэтому по идее его надо там указать
Margarita
а почему вложенный обьект в стейте?
в реальном коде у меня в стейте лежит массив объектов, который отвечает за сложную форму и при изменениях в него что-то добавляется или изменяется
Arthur
а почему вложенный обьект в стейте?
ну если он ридонли, то ничего плохого нет
Dmitriy
ну если он ридонли, то ничего плохого нет
зачем себе усложнять жизнь?
Arthur
зачем себе усложнять жизнь?
ну объект приходит из запроса
Arthur
по полям разбирать его будешь ?
Дима
https://github.com/pemrouz/proposal-emitter шо пацаны эффектор
ни слова о приоритезации сайд эффектов, апи сходу лезет в частные случаи, и что самое фиговое, располагается в рантайме. побочные эффекты, которые будут лезть поперёк вычислений, ломая логику хорошо проиллюстрируют то, откуда берутся гонки состояний. теперь и в жс, энжой)
Dmitriy
ну объект приходит из запроса
из какого запорса, вон и девочки это стейт формы
Margarita
по полям разбирать его будешь ?
у меня там куча селектов, при выборе отправляется запрос на сервер, то, что приходит кладется в стейт и в итоге это большой массив всяких селектов, инпутов, их значений, сообщений валидации и тп
Margarita
нельзя такое в стейте хранить?
Dmitriy
нельзя такое в стейте хранить?
можно все, но чем проще стейт тем проще с ним работать
Margarita
можно все, но чем проще стейт тем проще с ним работать
попробую отрефакторить, может проблема с подписками пропадет
Arthur
в целом да, лучше более атомарный стейт иметь
Bogdan
вынеси в контекст, добавь обёртку и получишь редукс
ну если вот например вакансия, у которой много полей, есть вложенные обьекты, это все проще разбивать?
Dmitriy
Bogdan
куда оправить?
ну я вот делал вакансии, у нее было куча полей, плюс их много может быть вложенных, был один стейт у родителя, который в конечном итоге отправлял беку
Bogdan
я вот просто не пойму, если бы я разбил его на части, было бы проще?
Andrew
Народ как константу с одной функции перенести в другую?
Andrew
с теми же данными
Bogdan
ну и на каждый тайп в инпуте ты морочил себе голову с огромным стейтом?
я рамду юзал тогда, был один обработчик на все поля
G.
Ребят, как лучше выделять компоненты подключенные к Redux store через connect. Выносить отдельно в containers, добавлять Connected к названию, или никак не выделять вообще. Какие еще варианты есть, кто как делает?
Dmitriy
так что дикой проблемы не увидел
просто подумай так ты при каждом тайпе формировал данные так что б оправить на сервер серевер , не логичнее сделать это тогда когда нужно отправить что то на сервер?
from
а откуда картинка?
ладно нашёл https://www.enterpriseintegrationpatterns.com/patterns/messaging/
Andrew
Народ а на реакте с одной функции, в другую мможно как то перенести const ? c теми же данными? setState не подходит, есть другие варианты?
Anonymous
покажи код
Andrew
ну есть у меня scrollCheck = () => { const oldScroll = document.documentElement.scrollTop; } и мне надо const oldScroll передать в другую функцию
Dmitriy
причем тут реакт ?)
так и скажи что твой реакт гамно раз не может такое
🦜
так и скажи что твой реакт гамно раз не может такое
да, реакт залупа и хуета, не изучайте его
🦜
так и скажи что твой реакт гамно раз не может такое
да я просто токсю с того, что люди думаю, что это должен как-то реакт решать
Anonymous
его вообще нужно чекать по канонам в getSnapshotBeforeUpdate
🦜
его вообще нужно чекать по канонам в getSnapshotBeforeUpdate
да лан, может просто в реф записать и юзать
Andrew
ты все еще по тому вопросу со скроллом?
да) я получил данные, но они в другой функции) и мне надо эти данные из одной функции в другую перекинуть
🦜
или в this, если юзает классы
Александр
дока на русском по реакту есть по js нет)
Дело не в языке доки, сейчас не модно просто читать
Anonymous
или в this, если юзает классы
проще на снепшоте и в дидапдейте получать значение
Andrey
да я просто токсю с того, что люди думаю, что это должен как-то реакт решать
когда нибудь люди поймут, что реакт нужен чтобы просто рендерить разметку, но не сейчас... не сейчас...
Anonymous
денчик так завещал