Open thejohnhoffer opened 2 years ago
With react-router-dom@6.1.1
, the parameter proposed for createHashHistory
can take effect immediately, thanks to the prematurely released (as of now unstable) HistoryRouter
API.
So, if PR #911 were released with history@next
, the changes to history.createHashHistory
could directly be used in react-router-dom@6.1.1
as follows:
<HistoryRouter basename="" history={createHashHistory({
window, hashRoot: ""
})}>
Here is a short example I've written to integrate react-router-dom
with a custom package called use-hash-history
that hosts the hashRoot=""
feature of PR #911.
@chaance do you see value in this feature? PR #911 has been ready to solve this for some time now.
The release of
history@5
lost the ability to navigate aHashHistory
without a slash in the hash (like#1/2/3
instead of#/1/2/3
) due to a missinghashType
option tocreateHashHistory
.After another user asked about the resulting loss of
hashType
inreact-router-dom@6
, one maintainer suggested we file in this repository. The solution developed in PR #911 would allowhashRoot=""
to replicate the old behavior ofhashType="noslash"
.The ability to begin hashes with
#
instead of#/
is not only cosmetic. I am migrating an existing website from vanilla javascript to react, and backwards compatibility of existing URL hash values requires#
instead of#/
.