Size: a a a

React — русскоговорящее сообщество

2021 January 17

И

Иван in React — русскоговорящее сообщество
Олег
> если они должны быть синхронизированы (хз, зачем), это делается на уровне редакса, а не на уровне компонента

не очень понял как это решается на уровне редакса
ну ты задачу опиши словами, я пока не очень понял что тебе нужно
источник

А

Александр in React — русскоговорящее сообщество
Ещё есть функция, которая позволяет диспатчить несколько экшнов на один ререндер, но я забыл, как она называется, мб кто подскажет.
источник

А

Александр in React — русскоговорящее сообщество
А вообще да, лучше просто подробно кейс опиши
источник

О

Олег in React — русскоговорящее сообщество
Иван
ну ты задачу опиши словами, я пока не очень понял что тебе нужно
ну вот есть вот такой код. и когда у страницы меняют location то getTemplates и getInfo фечат данные. если info уже зафечились а templates нет то отработает getData и аргументы будут неккоректны т.к. templates старые. при первом рендере это решается проверкой if(!templates.length && !info) return; а вот при повторном рендере лезет ошибка

useEffect(() => {
   dispatch(getTemplates());
   dispatch(getInfo());
 }, []);

useEffect(() => {
  if(!templates.length && !info) return;
   dispatch(getData(info, templates));
}, [info, templates])
источник

А

Александр in React — русскоговорящее сообщество
Олег
ну вот есть вот такой код. и когда у страницы меняют location то getTemplates и getInfo фечат данные. если info уже зафечились а templates нет то отработает getData и аргументы будут неккоректны т.к. templates старые. при первом рендере это решается проверкой if(!templates.length && !info) return; а вот при повторном рендере лезет ошибка

useEffect(() => {
   dispatch(getTemplates());
   dispatch(getInfo());
 }, []);

useEffect(() => {
  if(!templates.length && !info) return;
   dispatch(getData(info, templates));
}, [info, templates])
Что мешает через Promise.all в новой санке всё это сделать?
источник

О

Олег in React — русскоговорящее сообщество
Александр
Что мешает через Promise.all в новой санке всё это сделать?
изначально всё было вместе но я разделил т.к. если меняется например активный темплейт то мне надо фечить ток 1 эндпоинт а не все 3.
источник

О

Олег in React — русскоговорящее сообщество
но вообще ты прав да. надо так сделать. спасибо
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Олег
ну вот есть вот такой код. и когда у страницы меняют location то getTemplates и getInfo фечат данные. если info уже зафечились а templates нет то отработает getData и аргументы будут неккоректны т.к. templates старые. при первом рендере это решается проверкой if(!templates.length && !info) return; а вот при повторном рендере лезет ошибка

useEffect(() => {
   dispatch(getTemplates());
   dispatch(getInfo());
 }, []);

useEffect(() => {
  if(!templates.length && !info) return;
   dispatch(getData(info, templates));
}, [info, templates])
Ты сам на проекте?
источник

О

Олег in React — русскоговорящее сообщество
Dmitriy Shuleshov
Ты сам на проекте?
да. мне тяжело)
источник

И

Иван in React — русскоговорящее сообщество
Олег
ну вот есть вот такой код. и когда у страницы меняют location то getTemplates и getInfo фечат данные. если info уже зафечились а templates нет то отработает getData и аргументы будут неккоректны т.к. templates старые. при первом рендере это решается проверкой if(!templates.length && !info) return; а вот при повторном рендере лезет ошибка

useEffect(() => {
   dispatch(getTemplates());
   dispatch(getInfo());
 }, []);

useEffect(() => {
  if(!templates.length && !info) return;
   dispatch(getData(info, templates));
}, [info, templates])
обрабатывай в санке. зачем через реакт-компонент просовывать данные, которые нужны только для загрузки? почему их не использовать сразу для загрузки?
источник

AM

Ahma Mahma in React — русскоговорящее сообщество
люди добрые спасите, как картинку вставить то :D
источник

О

Олег in React — русскоговорящее сообщество
Dmitriy Shuleshov
Ты сам на проекте?
иногда понимаю что дико туплю из за ерунды
источник

И

Иван in React — русскоговорящее сообщество
Олег
изначально всё было вместе но я разделил т.к. если меняется например активный темплейт то мне надо фечить ток 1 эндпоинт а не все 3.
сделай разные обработчики для разных задач. меняется темплейт — тянешь темплейт. меняется роут — тянешь всё-всё-всё одной санкой, как на скриншоте выше
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Олег
иногда понимаю что дико туплю из за ерунды
Меньше завязывай глобальную логику на лайф сайкл реакт компонентов и будет тебе счастье
источник

О

Олег in React — русскоговорящее сообщество
Иван
сделай разные обработчики для разных задач. меняется темплейт — тянешь темплейт. меняется роут — тянешь всё-всё-всё одной санкой, как на скриншоте выше
да, спасибо большое)
источник

V

Vlad in React — русскоговорящее сообщество
Подскажите плиз, кто много работал с хуками, является ли использование объектов, а не примитивов в useState плохой практикой в плане производительности приложения?
источник

RS

Roman Still in React — русскоговорящее сообщество
Vlad
Подскажите плиз, кто много работал с хуками, является ли использование объектов, а не примитивов в useState плохой практикой в плане производительности приложения?
нет разницы
источник

И

Иван in React — русскоговорящее сообщество
Vlad
Подскажите плиз, кто много работал с хуками, является ли использование объектов, а не примитивов в useState плохой практикой в плане производительности приложения?
в плане производительности — нет. в плане удобства — является
источник

a

asd in React — русскоговорящее сообщество
Переслано от asd
Всем привет, долго не могу найти решение, почему-то после такого импорта шрифтов в create-react-app со styled-components не меняется font-weight, если внутри компонента App указываю, например, 300 или 500, хотя в font-face они обозначены. Возможно, у кого-то была такая же проблема?
Шрифты брал отсюда
https://google-webfonts-helper.herokuapp.com/fonts/roboto?subsets=cyrillic,latin
источник

И

Иван in React — русскоговорящее сообщество
Ahma Mahma
люди добрые спасите, как картинку вставить то :D
источник