This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2015-12-05
Channels
- # admin-announcements (8)
- # beginners (73)
- # boot (14)
- # cljsrn (4)
- # clojure (157)
- # clojure-indonesia (1)
- # clojure-poland (1)
- # clojure-russia (3)
- # clojurecup (32)
- # clojurescript (123)
- # clojurex (4)
- # core-async (8)
- # cursive (7)
- # datavis (26)
- # datomic (5)
- # hoplon (2)
- # off-topic (3)
- # om (41)
- # portland-or (6)
- # random (1)
- # re-frame (11)
- # slack-help (3)
- # specter (1)
I’ve written up my thoughts on routing https://github.com/omcljs/om/wiki/Routing-Support
based on the various solutions I’ve heard about - revisiting some assumptions and thinking a little bit differently about the problem should allow people to build robust and sophisticated routing solutions that don’t have the over-rendering problem
@dnolen: thanks for posting about routing - it’s something very important to me and i’m still don’t feel like i have a handle on how to do routing in a clean way in om next. "Questions like how to propagate or modify parameters from the top-level means users have not yet seriously considered the various tools around query - the simple AST”. what are you suggesting here? read-time interpretation of the ast? like using a union query and subselecting the interesting pieces based on the db state?
also rendering at the root whether via reconciler or root component means re-rendering everything
note that these are the fundamental concerns and problems - I don’t care about what high level solution people come up with. If the fundamentals get sorted people can build exactly what they want how they want
Re: routing, one thing I like about using joins for routing is that you can still get the root query of the application and know the entire demand for the application across all of it’s logical “pages”. This puts the burden on the programmer to give him or herself the correct semantics for when to fetch data through the parser implementation, but with set-query!
you are kind of back to reasoning about objects changing over time.
I’m only talking about people who want to build some generic router thing and the hooks they need
Ah, I see. So you could ship a routing component with no ties to application specific code and ship it as a library?
Yeah, you might ship both a component and a function to drop into your parser for one of the keys or something
@dnolen: thanks for you thoughts. I have to meet some people for lunch but will be thinking about this
Is there any reason why this here https://github.com/omcljs/om/blob/master/src/main/om/next.cljs#L955 says must be “ref or keyword”, but the condition is only (if (keyword? k))