Zhanadil
Дело в deps
что за deps?
Vadim
что за deps?
Второй аргумент у useEffect
Zhanadil
Дело в deps
точно! Я забыл его назначить)
Ilya
ну по факту нигде, кроме проектов где есть эти технологии rxjs может ещё в ангуляре
Ну я из тех соображений, что технология сама по себе очень привлекательная чтобы ее использовать, и такой способ знакомства с ней, позволит в дальнейшем ее активно применять где угодно. У меня так и было, началось все с redux-observable, и стех пор вообще идея примениния Rx меня не покидает использовать ее и ее возможности везде и всюду, аш себя по рукам надо бить иногда чтобы не тащить туда где объективно это будет оверхед и хочтся просто однообразия и удобства. (хотя вот на конкретно текущем проекте :) этого добра нет, но я работаю над этим - скоро занесем, вопрос уже решенный) Сама по себе идеология observable, реактивного программирования, мыслить потоками и методами их обработки, ИМХО - очень хорша. PS: Rx кстати очень неплохо заходит и в других языках и зачастую очень помогает найти обший язык с бэкендерами :)
Sergey
Ну я из тех соображений, что технология сама по себе очень привлекательная чтобы ее использовать, и такой способ знакомства с ней, позволит в дальнейшем ее активно применять где угодно. У меня так и было, началось все с redux-observable, и стех пор вообще идея примениния Rx меня не покидает использовать ее и ее возможности везде и всюду, аш себя по рукам надо бить иногда чтобы не тащить туда где объективно это будет оверхед и хочтся просто однообразия и удобства. (хотя вот на конкретно текущем проекте :) этого добра нет, но я работаю над этим - скоро занесем, вопрос уже решенный) Сама по себе идеология observable, реактивного программирования, мыслить потоками и методами их обработки, ИМХО - очень хорша. PS: Rx кстати очень неплохо заходит и в других языках и зачастую очень помогает найти обший язык с бэкендерами :)
rxjs имеет проблему ромбовидных зависимостей и страдает глитчами
Sergey
писать на rxjs === посыпать проект сложноотловимыми багами
Zaff
через useEffect делаю get запрос, и начинается бесконечный запрос. Как можно решить эту проблему?
только что сталкивался с этим) и нашел эту статью очень годной https://www.robinwieruch.de/react-hooks-fetch-data
Ilya
писать на rxjs === посыпать проект сложноотловимыми багами
ну сложности с отладкой есть определенные, но прям вот ставить "строгое сравнение" я бы не стал, даже исходя из того факта что RxJS как core технология используется в том же ангуляре
Sergey
в ангуляре спокойно юзают
Это вообще ничего не значит)
Anonymous
Это вообще ничего не значит)
Это значит, что ты попугай)
Andrey
писать на rxjs === посыпать проект сложноотловимыми багами
тоже самое с DI, он очень удобен, но порождает сложный дебаг
Sergey
Сколько там гонок данных я встречал это просто не счесть
Zaff
ммм, фетчинг из компонентов))
если компонент маленький и никак не привязан к общей логике приложения, почему нет?
Китикет
если компонент маленький и никак не привязан к общей логике приложения, почему нет?
Пока не встречал таких случаев, у меня 1 средне-крупный проект и 1 средний
Mourat
Кто-то использовал плагин shufflejs с реактом? Нужен рабочий пример грида с фильтром. Никак не получается самостоятельно завести. Вывод грида работает, но кнопки фильтра не появляются
アレクサンダー・バキマトフ
если компонент маленький и никак не привязан к общей логике приложения, почему нет?
компонент в котором фетчить надо что то и это обрабатывать уже не маленький. И что значит не привязан к логике приложения? если он что то фетчит значит для чего то это надо? как говорил выше Сова - мешать логику и представление антипаттерн. Как минимум если этого можно избежать - лучше избежать
Китикет
К тому же буду я выяснять где данные фетчатся, проще уж вынести в стм)
Yury
проблема в том, что в большинстве примеров в инете так и приводится. В компоненте дернул метод -> в стейт положил -> отрисовал. И пока человек там до стм дойдет, уже так и будет делать.. А если на работу устроился в мелкую контору, где и подсказать некому, так и будет делать .. Пока не прийдет в этот чат 😉
Китикет
По той же причине во всяких статьях по редаксу пишут все в один файл, и типы, и редьюсер, и экшны
Zaff
бля у меня джунство было простым, просто дают проэкт ты делаешь😁
на предыдущей работе тоже так было, сам с нуля изучал реакт и все с нуля делал, никто не подсказывал щас устроился в большую контору, все кул)
Dmitry
const f = a => b <TypedComponent onClick={f} /> А как делать, что бы f имел тип onClick? Если просто подставлять в onClick={a => b}, то a => b типизировано (заинферено), если выносить в f, то ни то, ни то не типизировано
Zaff
чего в чате тогда спрашиваешь? )) к лиду иди 🙂
да я ничего не спрашивал тут, скинул ссылку человеку, который спрашивал почему в юзэффекте у него бесконечный цикл p.s. сегодня у них праздничные каникулы, а я работаю в другой стране)
Ilya
писать на rxjs === посыпать проект сложноотловимыми багами
ну и я конечно с сагами знаком только "на попробовать" да есть коллега который с ними вроде как "намучался", так что скорее чвсего в плане отладки - логику на генераторах дебажить ничуть не проще чем RxJS условные-потоки, для которыз между прочим есть и специальные отладочные методы... вообщем это конечно вкусовщина, мне нравится по-мне так весьма сложную логику при помощи таких абстракций можно описывать очень лаконично.
Андрей
А флоу бы смог?
Полгода назад умел.
Андрей
Почему 2 раза консоль срабатывает?
Andrew
Почему 2 раза консоль срабатывает?
может, у тебя рендерится 2 раза?
Андрей
может, у тебя рендерится 2 раза?
компонент на странице всего 1
Dmitry
компонент на странице всего 1
Смотри на компонент выше
Yury
компонент на странице всего 1
добавь console.log перед useSelector, если тоже 2 раза - значит тебе верно указали выше
Daniil
компонент на странице всего 1
Это ничего еще не значит
Андрей
внутри хука 2 раза консоль отвечает, а в рендере 1 раз, это нормальное поведение?
Bogdan
почему два, если не тригерил, а только приконектил?
Dmitry
Да.
Я правильно понимаю что консоль лог будет выводится при каждом изменении state ?
Bogdan
что да, почему два раза, на каждый апдейт тоже - два раза
Китикет
Потому что значение из селектора не изменилось, зачем ему ререндериться
Dmitry
что да, почему два раза, на каждый апдейт тоже - два раза
Потому что при срабатывании любого другого в проекте редюсера с изменением стейта консоль лог выводится
Павел 💻
Всем привет! Может я не многог не в тему , но не могу связать owl carousel с react, просто в html всё работает, может кто нибудь помочь?
Dmitry
Срабатывание юзСелектора не говорит о том, что что-то будет перерендериваться
Bogdan
Срабатывание юзСелектора не говорит о том, что что-то будет перерендериваться
причем тут перерендер ало, я говорю про два выполнения
Dmitry
причем тут перерендер ало, я говорю про два выполнения
Ну и что тут не понятного, выше же написано, при ЛЮБОМ изменении стейта консоль лог выводится
Bogdan
Ну и что тут не понятного, выше же написано, при ЛЮБОМ изменении стейта консоль лог выводится
ты глупый или притворяешься? еще раз попробую, 1 коннект, без тригера - две консоли, с тригером - 2 консоли, переписать на обычный коннект - 1 консоль, зачем вообще отвечать, если максимально не одуплил вопрос?
Bogdan
прикольно, юзал хук, не замечал такого, реселект маст хев
Китикет
https://codesandbox.io/s/official-redux-hooks-sample-msewq На здоровье, смотреть в Counter
Ruslan Yumakaev
Ребят, вызываю useEffect по кнопке поиска, в ответ получаю следующее, как я понял, хук юзается вне компонента, но вроде как, использую его в компоненте
Ruslan Yumakaev
Ruslan Yumakaev
Ruslan Yumakaev
Maxim
Вынеси код кастомного хука в отдельный файл
Maxim
А что это даст?
Ошибки умеешь читать?
Ruslan Yumakaev
вынеси useSearch за компонент
Делал так, тоже самое получаю
Ruslan Yumakaev
Ошибки умеешь читать?
Я не к тому, что вы советуете что-то не то, а к тому, что так как я учусь, мне на самом деле интересно, почему именно такое решение
js2me ♨️
@yumakaev Этот проект в закрытом доступе ?