Size: a a a

Next.js — русскоговорящее сообщество

2020 May 22

A

Alexander in Next.js — русскоговорящее сообщество
Владимир Линкевич
полный ад))

useEffect(() => {
  Router.events.on('routeChangeComplete', (url) => {
   // свой код
 });
}, [Router]);
@Devision как адекватно мониторить изменения query ? Делаю вот так, но тут параметр может быть, а может не быть, и всё превращается в вермишель
источник

ВЛ

Владимир Линкевич... in Next.js — русскоговорящее сообщество
Alexander
@Devision как адекватно мониторить изменения query ? Делаю вот так, но тут параметр может быть, а может не быть, и всё превращается в вермишель
сделай проверку что он есть) - по другому ни как не сделаешь проверку на изменение. есть вариант что твой компонент перерендерится в случае изменение урлы (если у тебя оно настоящее) то тогда useRouter() и оттуда вытаскивать квери и кидать в депенденсы
источник

A

Alexander in Next.js — русскоговорящее сообщество
useRouter в useEffect нельзя же вызвать
источник

ИК

Игорь Корнелли... in Next.js — русскоговорящее сообщество
Alexander
useRouter в useEffect нельзя же вызвать
что за кейс?
источник

ИК

Игорь Корнелли... in Next.js — русскоговорящее сообщество
вообще конечно нет)
источник

A

Alexander in Next.js — русскоговорящее сообщество
Игорь Корнелли
что за кейс?
Та ничего особенного, просто поле для поиска которое передает свои параметры в
url
, и другая компонента которая мониторит эти изменения
нужно загружать данные один раз, а потом по мере изменений
источник

ИК

Игорь Корнелли... in Next.js — русскоговорящее сообщество
Alexander
Та ничего особенного, просто поле для поиска которое передает свои параметры в
url
, и другая компонента которая мониторит эти изменения
нужно загружать данные один раз, а потом по мере изменений
это как минимум не решается просто вызовом из useEffect, понадобится debounce
источник

ИК

Игорь Корнелли... in Next.js — русскоговорящее сообщество
и лучше ответственность разделить
источник

A

Alexander in Next.js — русскоговорящее сообщество
Игорь Корнелли
это как минимум не решается просто вызовом из useEffect, понадобится debounce
в своем рассказе я его упустил
источник

ИК

Игорь Корнелли... in Next.js — русскоговорящее сообщество
загрузить - одно а обновлять - другое
источник

A

Alexander in Next.js — русскоговорящее сообщество
это не меняет сути
источник

A

Alexander in Next.js — русскоговорящее сообщество
Игорь Корнелли
и лучше ответственность разделить
один useEffect загружает, второй который мониторит изменения - обновляет
источник

ИК

Игорь Корнелли... in Next.js — русскоговорящее сообщество
да, но зачем useRouter? ты хочешь url менять?
источник

A

Alexander in Next.js — русскоговорящее сообщество
Игорь Корнелли
да, но зачем useRouter? ты хочешь url менять?
я не использую useRouter
источник

A

Alexander in Next.js — русскоговорящее сообщество
источник

ИК

Игорь Корнелли... in Next.js — русскоговорящее сообщество
как минимум тебе надо еще и отписаться, а вообще не лучшая идея нестинг делать в dependency
источник

ИК

Игорь Корнелли... in Next.js — русскоговорящее сообщество
щас код потечет, и эту штуку надо выносить куда-то в useCallback
источник

ВЛ

Владимир Линкевич... in Next.js — русскоговорящее сообщество
Alexander
useRouter в useEffect нельзя же вызвать
ни кто и не предлагал)
источник

S

Shuh in Next.js — русскоговорящее сообщество
Alexander
я не использую useRouter
а для чего подписка на Router?
источник

A

Alexander in Next.js — русскоговорящее сообщество
Shuh
а для чего подписка на Router?
убрал
источник