Я пытаюсь обновить некоторые компоненты в Gatsby.js
, в зависимости от того, по какому пути я нахожусь.
Я использую useEffect()
, чтобы убедиться, что компоненты обновляются только при изменении location.pathname
(часть URL-адреса после домена).
Вот код: https://codesandbox.io/s/gatsbystarterdefault-290qv
По какой-то причине useEffect
не использует обновленные значения location
prop (который передается компоненту header
, который, в свою очередь, переносит каждую страницу).
Для воспроизведения перейдите к CodeSandbox выше и:
- Нажмите на страницу 2, затем снова на страницу 1
- См. Консольные утверждения, что
isHome when re-rendering Header
- это true
, а isHome at NavItemLink
- false
Есть идеи, почему useEffect
не получает последнее значение location
?