I can't seem to find how to update query params with react-router without using <Link/>
. hashHistory.push(url)
doesn't seem to register query params, and it doesn't seem like you can pass a query object or anything as a second argument.
How do you change the url from /shop/Clothes/dresses
to /shop/Clothes/dresses?color=blue
in react-router without using <Link>
?
And is an onChange
function really the only way to listen for query changes? Why aren't query changes automatically detected and reacted-to the way that param changes are?
Within the push
method of hashHistory
, you can specify your query parameters. For instance,
history.push({
pathname: '/dresses',
search: '?color=blue'
})
or
history.push('/dresses?color=blue')
You can check out this repository for additional examples on using history