Its because Om isn't built to work on sequences directly (I guess because
React doesn't? I remember seeing somewhere that dom/* is a very thin
wrapper over react functions). You may be interested in om-tools, which
DOES allow you to pass sequences to the dom functions:
https://github.com/Prismatic/om-tools/#dom-tools


On 17 August 2014 23:55, Ryan Waters <[email protected]> wrote:

> Yeah  : /
>
> Why require the use of 'apply' over simply wrapping a sequence of Om
> components with e.g. (dom/div ...)?  One of those things in Om that doesn't
> make sense to me.
>
> Thank you for the help.
>
>
> On Sun, Aug 17, 2014 at 5:05 PM, jack james <[email protected]>
> wrote:
>
>> On Sunday, August 17, 2014 3:22:53 PM UTC-5, Ryan Waters wrote:
>> > The following does not render a vector of numbers like I would expect -
>> what (assuredly) simple thing am I missing?
>> >
>> > Thank you.
>> >
>> >
>> ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
>> >
>> >
>> >
>> >
>> > (def app-state
>> >   (atom
>> >     {:items (vec (range 10))}))
>> >
>> >
>> > (defn subcomponent [item owner]
>> >   (reify
>> >     om/IRender
>> >     (render [_]
>> >       (dom/div nil item))))
>> >
>> >
>> > (defn component [app owner]
>> >
>> >
>> >   (reify
>> >     om/IRender
>> >     (render [_]
>> >       (dom/div nil
>> >         (om/build-all subcomponent (:items app))))))
>> >
>> >
>> > (om/root component app-state
>> >   {:target (. js/document (getElementById "app"))})
>>
>> looks like you missed an "apply":
>>
>> ...
>>        (apply dom/div nil
>>          (om/build-all ...
>>
>> --
>> Note that posts from new members are moderated - please be patient with
>> your first post.
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "ClojureScript" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/clojurescript.
>>
>
>  --
> Note that posts from new members are moderated - please be patient with
> your first post.
> ---
> You received this message because you are subscribed to the Google Groups
> "ClojureScript" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/clojurescript.
>

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/clojurescript.

Reply via email to