TheSnegok
@TheSnegok

Почему useLocation не хочет обновлятся?

Драсьте! Сделал инпут для поиска, справа картиночка с лупой, и простой текст, хочу чтобы когда нажимаешь ентер или на лупу на любой странице кроме /search оно редиректило на эту страницу, а на странице /search нет. Сделал нажатие на ентер, работало, сделал чтобы следило чтобы в инпуте не была пустая строка, работает. Дальше добавил в useEffect зависимость location и оно кидает все равно и не хочет менять pathname:
let redirect = useNavigate();
	let location = useLocation();

        useEffect(() => {
		window.addEventListener('keydown', (e) => {
			if (e.key === 'Enter' && findInput.text !== '' && location.pathname !== "/search") {
				console.log('worked!', location.pathname);
				redirect('/search');
			}
		})
	}, [findInput.text, location, redirect])

Я создал другой useEffect и выводил в нём location.pathname и там всё выводилось правильно, подскажите в чём проблема.
  • Вопрос задан
  • 44 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы