This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-05-21
Channels
- # aws (2)
- # bangalore-clj (1)
- # beginners (25)
- # boot (2)
- # cider (176)
- # clara (73)
- # cljs-dev (6)
- # cljsrn (31)
- # clojure (40)
- # clojure-greece (9)
- # clojure-india (1)
- # clojure-italy (14)
- # clojure-nl (9)
- # clojure-russia (4)
- # clojure-uk (156)
- # clojurescript (124)
- # core-async (37)
- # cursive (2)
- # data-science (2)
- # datomic (22)
- # emacs (3)
- # fulcro (32)
- # graphql (6)
- # java (3)
- # lein-figwheel (19)
- # lumo (29)
- # nyc (1)
- # off-topic (9)
- # onyx (15)
- # portkey (12)
- # precept (2)
- # re-frame (15)
- # reagent (10)
- # rum (7)
- # schema (2)
- # shadow-cljs (48)
- # tools-deps (35)
- # yada (1)
I've finally achieved some level of confidence with my basic react native / re-natal stack.
Includes codepush which means deployments for most business logic is a lot simpler. MS deserve a pat on the back for that.
Just wanted to share.
Roll on business features.
Here's how we navigated the maze and got to what seems like a productive setup: https://confluence.condense.com.au/display/IZ/
Is catching/showing thrown exceptions a known issue? This is what I get when my check-and-validate
detects the app-db isn't valid.
1. eats the error
2. red error box shows "Uncaught [object [Object]]"
The work around seems to be using js/console.error
instead of throw
. (If that's the case perhaps it's a better default in the template.)
(defn check-and-throw
"Throw an exception if db doesn't have a valid spec."
[spec db [event]]
(when-not (s/valid? spec db)
(let [explain-data (s/explain-data spec db)]
(js/console.error (ex-info (str "Spec check after " event " failed:") explain-data)))))
@olivergeorge from what I know if you throw an error it will be catch and re throw several times before it is printed on the screen. Console error does it immediately which is why you see a different behavior. I think this is related to the code reloading that both react natives and figwheel do in the middle
Thanks. I guess that makes sense. If that's the case I might log a re-natal issue suggesting the change.
@jeluard is it possible for clj-rn to bundle the packager so user don't have to start 2 processes?
That’s something we might want to do yes. Would you want to create an issue with more details about this?
@doglooksgood the expo
support is probably going away. too many limitations and trying to keep that in sync with expo itself is too much work.
I mean the "not running expo tools" support. you'll still be able to use it but not without running the default RN tools
I mean the build support itself is solid but the problem is that you are missing out on most development features built into expo/metro
the chrome devtools actually provide three things I think: 1. the console output 2. source map 3. the debugger(probably not work very well with cljs because the dirac not work with RN yet)
since there's a repl with shadow-cljs, I still can get the console output. the only thing missing is source map.
I don't think it's a big problem. the advantage for the current stage is obviously, it's really convenient.
yeah I still like the idea and if someone wants to "finish" and maintain it I'm all for it but it is not feasible for me to keep up with expo
and metro
it might be a necessary evil to use the standard RN tools until they become more customizable. the "hack" I have done is pretty limited though so I can't really take it any further
I don't think I can improve it now because I'm a kind of n00b. but I'm trying to write an app with expo and shadow-cljs.