This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-08-04
Channels
- # arachne (1)
- # beginners (41)
- # boot (92)
- # capetown (8)
- # cider (10)
- # cljsjs (4)
- # cljsrn (42)
- # clojure (94)
- # clojure-india (1)
- # clojure-russia (48)
- # clojure-sanfrancisco (1)
- # clojure-spec (34)
- # clojure-uk (13)
- # clojurescript (29)
- # cursive (12)
- # datavis (4)
- # datomic (10)
- # dirac (63)
- # editors-rus (16)
- # emacs (57)
- # funcool (5)
- # hoplon (22)
- # jobs (2)
- # lein-figwheel (3)
- # leiningen (5)
- # onyx (51)
- # other-languages (2)
- # proton (1)
- # protorepl (2)
- # re-frame (34)
- # remote-jobs (1)
- # sfcljs (5)
- # spacemacs (1)
- # specter (2)
- # sql (20)
- # test-check (54)
- # yada (1)
@shader @danielcompton happens often to me as well that the page will break and I have to refresh, but I don't remember exactly the error message. It's something like "this.innerElement is null"
Could be a reagent/react error?
There’s only two asserts in re-frames’ code base, and both are for logging with unknown log levels
It looks like it's a reagent/react error to me. How can I start debugging it?
I have no idea from where to start honestly 😄
Bit of a gut feel thing at the moment
Should be a bit better in the next version of re-frame
Yep I just saw that a PR was merged in the next alpha. I can't bump up the reframe version in the current project because we're near to delivery, but in a couple of weeks I'll start a new one :)
Question: I'm not using cljs-devtools and/or dirac yet, but apparently it's common to use them with reframe?
cljs-devtools is a must have
dirac is also great, but not as essential as devtools
or rather, dirac takes a little bit more work to get setup and using it
they’re both great
Yep setting up Dirac looks a bit complicated. Also it needs a nrepl? What about using it with figwheel?
works fine with figwheel
it’s not as bad as it looks
works great with figwheel actually, as you can explore your app state really effectively
Awesome, I'll give it a shot in the next hours :) thanks!
Yep, using devtools is ABSOLUETLY essential. And easy these days. Truly, just do it now. Don't wait. 🙂
@mikethompson @gadfly361 yep, I feel on another planet now, logged stuff is actually readable
I wonded why devtools are not included in ANY lein template
@mikethompson I use devtools too but I get a lot of noise about cache hits on subscriptions and event handlers being overwritten when figwheel reloads stuff. Any chance they could be made quieter (debug level)? I'm happy to do a PR if you agree
@rui.yang regarding reloads there is a reagent function to force a refresh on all components, you can arrange for figwheel to call that after it has reloaded. Caveat, it doesn't seem to work on root components, just children. And it doesn't seem to force reframe subscriptions to re-run, but reframe might have hooks for that as well
@oliy: The messages about cache hits will disappear shortly. That's just an alpha thing. On the other hand, the warnings from figwheel reloads are a bit unavoidable, assuming we want to be told if event handers have the same id (and we do).
@nilrecurring: it is indeed in the re-frame-template thanks to the relentlessly attentive @gadfly361 https://github.com/Day8/re-frame-template/blob/master/src/leiningen/new/re_frame/src/cljs/core.cljs#L15
@mikethompson: I don't know if there is a way to emit it only when advanced compilation is on, as in our build but not local dev, or if it could take note of a cljs build variable. But it'll be a lot better when the cache hits don't get logged anymore, thanks
@mikethompson: *any template I looked at. I overlooked the most obvious one! Thanks 🙂
In production I’d like to change the re-frame logs to just print text (`str`). I see there’s a set-loggers! function, but it looks like you are just binding the console to it?
oh, nevermind it’s documented here: https://github.com/Day8/re-frame/wiki/FAQ
sorry, when I said re-frame I meant re-com; it seems that a lot of the element parameter validation assertions cause the rendering to break
@shader those assertions mean your parameters are wrong.