This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-06-17
Channels
- # announcements (3)
- # beginners (107)
- # calva (13)
- # clj-kondo (5)
- # cljsrn (21)
- # clojure (99)
- # clojure-australia (8)
- # clojure-dev (51)
- # clojure-europe (108)
- # clojure-nl (1)
- # clojure-portugal (3)
- # clojure-spec (9)
- # clojure-uk (10)
- # clojurescript (147)
- # component (7)
- # conjure (5)
- # core-async (2)
- # cursive (11)
- # datomic (11)
- # emacs (14)
- # graalvm (163)
- # graalvm-mobile (317)
- # honeysql (15)
- # introduce-yourself (4)
- # jobs (3)
- # lambdaisland (1)
- # lsp (19)
- # luminus (3)
- # malli (17)
- # off-topic (10)
- # pathom (11)
- # reagent (10)
- # remote-jobs (2)
- # ring (1)
- # shadow-cljs (22)
- # test-check (2)
- # testing (5)
- # tools-deps (39)
@michael.w.jung “Do you simply have a conditional in your root component that will show the proper subcomponent depending on your application state?” Yes! That’s what I do.
I very much share dnolen’s skepticism of router frameworks. Too much buy-in for my taste. Your whole application and every component becomes dependent on them.
Hi, I'm trying the Krell, but I can't figure out how to connect rn and cljs actually. I've followed the tutorial https://github.com/vouch-opensource/krell/wiki/Reagent-Tutorial I can't continue to the next step after running the build command and seeing waiting for device connection on port 5001
.
The metro bundler is running on 8081, and successfully running a build the rn itself on device.
Never mind. It was the matter of time and the order of running commands. After several tries, I finally see the Hello Krell
message on the device. :thumbsup:
But the metro bundler is complainning about these error messages when I start running the repl. Is it okay to ignore it or should I fix something?
ERROR Could not evaluate [SyntaxError: 9:20:Invalid expression encountered]
ERROR Could not evaluate [SyntaxError: 14:1:invalid statement encountered.]
ERROR Could not evaluate [SyntaxError: 17:32:Invalid expression encountered]
ERROR Could not evaluate [SyntaxError: 16:21:Invalid expression encountered]
ERROR Could not evaluate [SyntaxError: 14:23:Invalid expression encountered]
LOG Connected to Krell REPL Server
ERROR Could not evaluate [SyntaxError: 17:1:invalid statement encountered.]
ERROR Could not evaluate [SyntaxError: 25:22:Invalid expression encountered]
ERROR Could not evaluate [SyntaxError: 11:1:invalid statement encountered.]
Is it possible to use the 10x dev tool with Krell + re-frame? or any other recommended dev tool such as 10x?
@woonki.moon we load ClojureScript files through Metro so that is a bit odd - you should paste those urls into the browser and confirm they look ok
Oh, actually I'm using the hermes. I think I should test it after turning off. Is it okay to turn it enabled when I build it for production?
Hey @dnolen do you mind sharing some more details on Hermes and the issues you came across? Thanks
The error messages are gone now when I turned the hermes off. Thanks!
good to know that. Thanks!
@raspasov I definitely can relate to that. I’m not too happy with it either. But I like the idea of having a look & feel as close to native as possible. So far I was able to keep it out of my components pretty well as I hid it using re-frame effects. @dnolen I’ve found some articles that claim to have a solution to hot reloading with react (native) navigation. They make use of some special lifecycle functions in shadow-cljs like in the following example:
(defn ^:dev/after-load start []
(js/console.log "start"))
(defn init []
(js/console.log "init")
(start))
;; optional
(defn ^:dev/before-load stop []
(js/console.log "stop"))
Where init
is called once, start
is called after every hot reload, and stop
before the hot reload is applied.
Can we do something similar with Krell?