I'm experiencing a problem where when there werequeryParams before navigating to a new URL without query params, route-changed is dispatched twice, the first time around with bad state (i.e., contains the old queryParams).
E.g., start with URL:
/context/?param=foo
route-changed is dispatched:
appRout.queryParams === {param: "foo"}
user clicks on <a href="/context">...</a>, and route-changed is dispatched:
appRoute.queryParams === {param: "foo"}
but then route-changed is immediately dispatched a second time:
appRoute.queryParams === {}
The work-around I'm using is wrapping my route-changed event handler in a 0ms-debounce, which allows the event loop to recycle and finish the required mutations to the state of the queryParams. However, route-changed is still dispatched twice.
I'm experiencing a problem where when there were
queryParams
before navigating to a new URL without query params,route-changed
is dispatched twice, the first time around with bad state (i.e., contains the oldqueryParams
).E.g., start with URL:
route-changed
is dispatched:user clicks on
<a href="/context">...</a>
, androute-changed
is dispatched:but then
route-changed
is immediately dispatched a second time:The work-around I'm using is wrapping my
route-changed
event handler in a 0ms-debounce, which allows the event loop to recycle and finish the required mutations to the state of thequeryParams
. However,route-changed
is still dispatched twice.