untangled

NEW CHANNEL: #fulcro
grzm 2016-09-19T14:11:51.000405Z

@tony.kay that's really cool πŸ™‚ Nice!

2016-09-19T19:06:28.000406Z

Is there a render that happens before the InitialAppState is merged in?

2016-09-19T19:06:43.000407Z

i'm seeing some exceptions that make me think that where I need to ensure there's default values for props

tony.kay 2016-09-19T19:14:43.000408Z

IAS has to be given to reconciler, so no

2016-09-19T19:18:12.000409Z

ok thanks, the render with nil in props are happening through some other way then, that helps narrow it down thanks

ecaspary 2016-09-19T19:33:46.000410Z

@jasonjckn I feel like I've encountered something similar (initial render had nil props, everywhere) I think in my case it was due to misshapen data being returned from my initial server api-read.

2016-09-19T19:35:23.000411Z

thanks for the input, i'm following a thread right now on it my Root query has {:foo (get-query FooComponent)} which means :foo is read from global state , but also I have an ident [:foo X]

2016-09-19T19:35:26.000412Z

so i think there's conflict

2016-09-19T19:35:39.000413Z

(FooComponent has ident [:foo X])

grzm 2016-09-19T19:50:43.000414Z

Started looking at Compassus a bit. Is there a way to use Compassus and Untangled together? Looks like they both want to wrap the application

tony.kay 2016-09-19T20:16:19.000415Z

@grzm not easily

grzm 2016-09-19T20:16:33.000416Z

that's what I suspected πŸ™‚

grzm 2016-09-19T20:18:00.000417Z

btw, the other day you were right about the loading data bit after I added a leaf component. The shape of the incoming data needed to change.

2016-09-19T20:24:41.000418Z

I dunno if this is useful @grzm, since looks like Compassus is pretty full-featured, but for us it was sufficient to just use Pushy with a bit of custom wrapping which basically boiled down to make it so on each route change event we call om/transact! to update :ui/current-route in the app state.

grzm 2016-09-19T20:25:34.000419Z

@therabidbanana Yeah, I was thinking the same when I was looking over the Compassus README. @anmonteiro your README is really good πŸ™‚

1πŸ‘
2016-09-19T20:26:37.000420Z

One thing we found useful with that approach is "post-transactions" that the routing event tacks on for certain pages to get data to load, etc.

anmonteiro 2016-09-19T20:26:38.000421Z

@grzm I don’t know when you looked at Compassus

grzm 2016-09-19T20:26:45.000422Z

Yesterday

anmonteiro 2016-09-19T20:26:53.000423Z

so you already saw the mixin stuff

grzm 2016-09-19T20:27:16.000424Z

Yup. I have an allergy to mixins, so I'll admit I haven't looked at them too closely

anmonteiro 2016-09-19T20:27:29.000425Z

I’m planning on moving e.g. the :history config key to be a mixin too

anmonteiro 2016-09-19T20:27:43.000426Z

since it’s just something that hooks into the root component lifecycle

anmonteiro 2016-09-19T20:27:54.000427Z

so some changes coming to the next release

anmonteiro 2016-09-19T20:27:57.000428Z

just a heads up

anmonteiro 2016-09-19T20:28:06.000429Z

but migration will be very straightforward

grzm 2016-09-19T20:28:36.000430Z

Cool. At this point I'm just looking at it for ideas that I can integrate into my existing Untangled app. And there are a lot of good ideas in there.

anmonteiro 2016-09-19T20:28:56.000431Z

e.g. this was the only thing that we needed to migrate from :wrapper to a mixin: https://github.com/compassus/compassus/commit/b63876a806bb03b3e462754136bfcd24fdf2001b#diff-a6beef26a2a83ef9397df32b89e26117L114

grzm 2016-09-19T20:30:36.000432Z

Do you generally write most of your code cljc at this point?

anmonteiro 2016-09-19T20:33:07.000433Z

Ever since Cellophane existed, yea πŸ˜›

grzm 2016-09-19T20:33:57.000434Z

I think the number of cljc namespaces I've created at this point is still less than 5 πŸ™‚

grzm 2016-09-19T20:34:23.000435Z

Good habit to get into, though, if writing web apps with a server component. Also helps reinforce the distinctions between the two implementations.

1πŸ‘