Fansite for the global version of Fate/Grand Order with Event Timers, info on future Upgrades, Interludes, Rank Ups, Login Exchange Tickets and Calculators
Due to unknown reasons the navigation does not render the correct HTML during ISR. This can be seen easily by opening the page source and searching for >Timers<
In a debug deployment the following things have been confirmed:
useRouter works as expected, still has "/" on the asPath property
the testActive callback works as expected, returning true for the "Timers" route
ISR still receives true from this callback!
Non-ISR pages as well as pages that have not been rebuilt by ISR have the intended result
ErrorBoundaries will catch Hydration Errors, but are reset when React switches to client-rendering the page as this rebuilds the entire DOM from scratch. They are still useful to log warnings to the client before this reset occurs.
Summary
Due to unknown reasons the navigation does not render the correct HTML during ISR. This can be seen easily by opening the page source and searching for
>Timers<
Expected Result
Incorrect Result
Further Information
In a debug deployment the following things have been confirmed:
asPath
propertytestActive
callback works as expected, returningtrue
for the "Timers" routetrue
from this callback!A discussion on the next.js repository has been opened here: https://github.com/vercel/next.js/discussions/48130
Affected Code
https://github.com/Mitsunee/fgo-timers/blob/13b9516dce8efee47ce5d5d10b5a223ce34eabce/src/client/components/Layout/Navigation.tsx#L18-L53