I'm calling navigate! with the same route and params, but changing the 3rd argument, the query, causes a new set of query params to be added to the end of the URL. (instead of clearing out the previous keys).
For example, from the README if I do
(r/navigate! router :myapp/user-by-id {:id 2} {:foobar 1})
;; => "/api/users/2?foobar=1"
(r/navigate! router :myapp/user-by-id {:id 2} {:foobar 2})
;; => "/api/users/2?foobar=1?foobar=2"