Use history.replaceState when updating URL hash on /faq - #95
Open
lewisdoesstuff wants to merge 1 commit into
Open
Use history.replaceState when updating URL hash on /faq#95lewisdoesstuff wants to merge 1 commit into
history.replaceState when updating URL hash on /faq#95lewisdoesstuff wants to merge 1 commit into
Conversation
Currently, this uses `location.hash = ${faqTitle}`, which pushes a new history entry when opening or closing an FAQ section
If a user opens a bunch of the FAQ questions, the back button seemingly stops working, as there are history entries for the `/faq` page for every opened FAQ.
The page doesn't actually re-open the previous FAQ when pressing back, however, as the check for a hash fragment is only done on initial render.
Updated this to use `history.replaceState` instead, replacing the history entry with the current open FAQ hash fragment, ensuring only one history entry for the page, regardless of how many interactions there were.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Currently, this uses
location.hash = ${faqTitle}, which pushes a new history entry when opening or closing an FAQ sectionIf a user opens a bunch of the FAQ questions, the back button seemingly stops working, as there are history entries for the
/faqpage for every opened FAQ.The page doesn't actually re-open the previous FAQ when pressing back, however, as the check for a hash fragment is only done on initial render.
Updated this to use
history.replaceStateinstead, replacing the history entry with the current open FAQ hash fragment, ensuring only one history entry for the page, regardless of how many interactions there were.