Andrii
ну так ищи что false выставляет первый
Он по дефолту стоит в false, но перед запросом, срабатывает синхронная функция, которая меняет его на true.
Andrii
тоесть еще до получения данных?
Да, до получения. Но мне кажется проблема может быть из-за того, что useEffect уже срабатывает после маунтинга компонента.
Andrii
тоесть еще до получения данных?
Подсказали решение, useLayoutEffect - спасает, он помогает избежать мерцания.
Andrii
👍 мерцание зло)
Вот описание проблемы, вдруг кому-то интересно: https://blog.logrocket.com/useeffect-vs-uselayouteffect/
Vlad
Ребятки, у меня есть jsonserver, на котором лежит файлик с юзерами. они выводятся у меня на вьюхе. так же есть страничка регистрации, при которой новые пользователи должны прокидываться туда. экшены, редюсеры и санки прописаны. но при заполнении формы формируется только новый id
Vlad
Vlad
стейт заполняется и выводится в консоль, но не передается выше.
Alexander
зачем выше? у тебя же редакс
Vlad
В постюзер почему ничего не передаешь?
ну дак вроде юзера передаю, только хз как его передать, 35 строка и 167
Vlad
export const postUser = (user) => async (dispatch) => { try { dispatch(setNewUserLoading()); const response = await UserApi.setNewUser(user); dispatch(setNewUserSuccess(response.data)); } catch (error) { dispatch(setNewUserError(error.message)); } };
Nikolay
У тебя не компонент а жесть
Vlad
export class UserApi { static getAllUsers = async () => { return await axiosInstance.get(USER_URLS.USERS); }; static setNewUser = async (body) => { return await axiosInstance.post(USER_URLS.USERS, body); } }
Nikolay
Где у тебя объект юзер хранится?
Nikolay
В стэйте или где?
Vlad
Где у тебя объект юзер хранится?
у меня в редюсере: const initialState = { currentUser: null, userList: [], loading: false, error: "", }; я туда и добавляю новых и достаю оттуда старых
Nikolay
Так
Nikolay
this.props.postUser(this.state) Пробуй
Nikolay
А, нет
Anonymous
есть какой-то бестпрактикс для логина в несколько аккаунтов? вообще интересует как это хранить в куках/локале
Vlad
Пробуй
заработало....сцуко я три дня сидел 😂😂😂....спасибо тебе огромное...!!!!!!!!!
Anonymous
в несколько одновременно ?
ну как в яндексе/гугле где можно переключиться. нагуглить не удается
Сергей
Ребят, подскажите, как в production build не отображать эти файлы на стороне клиента? Или так нельзя?
Vlad
это не твой код?
моё говнецо😅. просто я только начал реакт изучать, по этому много завтыков часто
Ilya
Это как?
проект собирается webpack - ом ?
Сергей
проект собирается webpack - ом ?
Просто npm run build react-scripts build
Ilya
Просто npm run build react-scripts build
проект создавал при помощи CRA (create react app)?
Сергей
в .env файл: GENERATE_SOURCEMAP=false
У меня нету такого(
Michael
У меня нету такого(
создай файл .env в корне проекта и туда эту строчку
Oleh
Ребята привет. Юзаю scss modules, и когда пишу класс какой то через dash, к примеру: <section className={styles.Filter-section}>то идут ерроры, если пишу классы через camelCase, то нет, скажите, нормально писать scss класы в camelCase, или может есть решения еррора ?
Ilya
как вариант прям в своем package.json
Сергей
it works!
Oleh
Ребята привет. Юзаю scss modules, и когда пишу класс какой то через dash, к примеру: <section className={styles.Filter-section}>то идут ерроры, если пишу классы через camelCase, то нет, скажите, нормально писать scss класы в camelCase, или может есть решения еррора ?
Поискал в групе и нашел решения юзать naming по типу бэм классов, <section className={styles.filter_section}>но выглядить ugly честно говоря, может есть другое решение, или писать в стиле camelCase норм ?
Ruslan Yumakaev
Ребят, как разобраться с чертовым редюсером? HEROES_PROMO_LOADED - грузит данные из локальной БД, HEROES_API_LOADED - грузит данные по апи, как итог, и там и там данные из локальной БД...
Дима 🧨
Дима 🧨
А что за иконки
Ruslan Yumakaev
HERO_API_LOADED
Ruslan Yumakaev
アレクサンダー・バキマトフ
а apiService покеж
Ruslan Yumakaev
Ruslan Yumakaev
Передаю два экзепляра класса, один отвечает за получение инфы с локалки, второй - за получение инфы с апи
アレクサンダー・バキマトフ
ну и экшоны тогда докидывай чо уж)
Ruslan Yumakaev
Китикет
Эххх, ну зачем сервисы писать, зачем они вообще на фронте?
アレクサンダー・バキマトフ
если это не ангуляр)))
Китикет
По-моему хватает тупо одной обертки над хттп клиентом, + набор запросов с ее использованием, нормализация и тд в селекторах или перед установкой в стор если приспичило
Китикет
Китикет
Вообще экшны типа то же самое делают)
Ruslan Yumakaev
Так разве в экшонах пэйлуд не разный?
Китикет
Ребят, как разобраться с чертовым редюсером? HEROES_PROMO_LOADED - грузит данные из локальной БД, HEROES_API_LOADED - грузит данные по апи, как итог, и там и там данные из локальной БД...
Внимание на этот скрин, тут один редьюсер, а в обоих экшнах ставится одно и то же Получается в редьюсере будут не оба результата с 2 апишек, а только тот который последний пришел Они перетирают данные друг-друга
Ruslan Yumakaev
Просто эта путанница со стейтом в редюсере, я уже запутался что и куда надо загружать и как это делать
Китикет
В кейсе api loaded надо убрать установку promoHeroes, а в heroes loaded установку apiHeroes
Китикет
Вот так?
Вообще убери строчки где пустой массив ставишь) Но я на самом деле без понятия чего конкретно ты добиваешься, я все скрины не смотрел
Илья
всем привет, а подскажите, может кто то сталкивался с тем как собирать данные с форм на сайте в онлайн гугл-таблицы из реакт приложения без сервера
Ruslan Yumakaev
Вообще убери строчки где пустой массив ставишь) Но я на самом деле без понятия чего конкретно ты добиваешься, я все скрины не смотрел
На главной странице пытаюсь отобразить инфу из локалки, а в строке поиска, пытаюсь искать инфу из апи
GrafMine