This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-11-11
Channels
- # announcements (2)
- # asami (1)
- # babashka (15)
- # beginners (29)
- # calva (6)
- # cider (22)
- # clara (1)
- # cljfx (1)
- # clojure (86)
- # clojure-australia (1)
- # clojure-dev (25)
- # clojure-europe (38)
- # clojure-france (7)
- # clojure-italy (3)
- # clojure-losangeles (1)
- # clojure-nl (6)
- # clojure-seattle (1)
- # clojure-spec (9)
- # clojure-uk (25)
- # clojuredesign-podcast (2)
- # clojurescript (4)
- # conjure (9)
- # cryogen (8)
- # cursive (17)
- # data-science (5)
- # datalog (1)
- # deps-new (1)
- # depstar (1)
- # emacs (1)
- # events (6)
- # fulcro (2)
- # graphql (3)
- # helix (4)
- # jackdaw (1)
- # jobs (1)
- # kaocha (9)
- # leiningen (4)
- # malli (1)
- # off-topic (7)
- # other-lisps (2)
- # pathom (12)
- # re-frame (16)
- # remote-jobs (1)
- # shadow-cljs (28)
- # spacemacs (19)
- # sql (2)
- # test200 (2)
- # testing (5)
- # timbre (1)
- # tools-deps (18)
- # xtdb (10)
I ran into issues with Dynamic Routing after upgrading from 3.1.10 to 3.4.3. Maybe it helps someone who is running into similar issues.
We kept on seeing this error dr/target-ready! was called but there was no router waiting for the target listed:.
The cause:
We wrapped (dr/change-route! ..). in a mutation. Somewhere between version 3.1.10 and 3.4.3 dynamic routing started using the binding comp/*after-render true
to block the deferred-routes completion-fn tx’s until the next render. The usim event route!
would trigger this render and un-block the tx’s of the deferred routes.
Mutation actions also have the binding comp/*after-render set to true
by default causing the event route!
to also be blocked until the next render.
Solution:
Don’t wrap (dr/change-route! ..) in a mutation or bind comp/*after-render to false
in the mutation action.