This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-03-14
Channels
- # arachne (5)
- # architecture (2)
- # bangalore-clj (7)
- # beginners (96)
- # boot (34)
- # braveandtrue (1)
- # cider (12)
- # cljs-dev (38)
- # cljsrn (59)
- # clojure (326)
- # clojure-dev (35)
- # clojure-greece (1)
- # clojure-italy (6)
- # clojure-russia (47)
- # clojure-spec (16)
- # clojure-uk (25)
- # clojurescript (136)
- # core-async (18)
- # cursive (18)
- # datascript (2)
- # datomic (28)
- # dirac (6)
- # emacs (4)
- # garden (3)
- # hoplon (28)
- # instaparse (1)
- # jobs (4)
- # juxt (1)
- # lein-figwheel (10)
- # liberator (1)
- # mount (3)
- # off-topic (39)
- # om (16)
- # om-next (1)
- # onyx (15)
- # pedestal (9)
- # proton (1)
- # random (1)
- # re-frame (48)
- # reagent (8)
- # ring-swagger (4)
- # rum (3)
- # specter (5)
- # sql (3)
- # unrepl (273)
- # untangled (27)
- # vim (4)
- # yada (7)
https://github.com/airbnb/native-navigation Hooray, one more navigation library, the one that was missing!
just wanted to post the same š
Iām seeing some very weird behavior trying to pass ClojureScript datastructure (a vector) in...
but I donāt want to do useless convertingā¦ (which can be pretty perf. intensive)
what I did with ListView is - pass a list of ids (+ hashes maybe) as data source, and get full cljs object in render-row component
the new VirtualizedList seems much nicer, I gotta say (after I got past the lack of documentation)
@raspasov what is this for?
(def ^js/window.ReactNative ReactNative js/window.ReactNative)
the only place where Iāve seen it mess up is inside a core.async (go (loop []ā¦)) - but Iām pretty sure thatās core.asyncās fault because it probably drops metadata
one peeve I have is when a JS library or React Native itself hands me back some JS objectā¦ š š
and you have no choice except to manually pull out your nice immutable data out of the object nightmare š
you give virtualized-list a clj map/vector, and it passes js item to render-row component/fn?
this example expects a vector, and in general it makes sense I think, since it should be something sequentially seqable (or I guess it can be an ordered map?)
the most expensive part in (clj->js ā¦) I believe is when you have a lot of data in there
so I (dissoc ā¦) :data from the immutable props, turn the result into a js-object, and then āmanuallyā aset data back into it
6 months ago when I started react native + clojurescript I didnāt realize/know how expensive the clj->js operation and back isā¦ and I was doing it all the time but it really can hurt performance, esp on older devices
@misha what is exactly the difference? I never quite understood how is (aset ā¦) not good? (I think I read something by David Nolen or someone else a while ago)
oh wow, been using aget
for ages for js object access, never knew that itās wrong
going through porting my old ListViews to VirtualizedList, one thing thatās explicitly WIP...
so if you need thisā¦ you might want to hold off on VirtualizedListā¦ even though I just tried hacking the source and it *does* seem to work
scrollEventThrottle: 1 <<ā seems to work, even on Android, but use with caution, I guess š
@artemyarulin yea I still donāt quite understand how exactly itās wrong but Iām going to switch to use goog.object, etc etc š
yeah, weird