It sure does, but _what_ would you put in that argument ;). On 27 March 2015 at 13:39, Jamie Orchard-Hays <[email protected]> wrote: > Does it make sense to pass the reusable component's context as an argument to > it? ie, > > (defn ReusableComponent [some-context] .... ) > > Jamie > > On Mar 27, 2015, at 8:54 AM, Colin Yates <[email protected]> wrote: > >> In re-frame event dispatching is handled by (dispatch [:discriminator >> detail]). A corresponding (register-handler :discriminator (fn [db [_ >> detail]]) then reacts to that dispatched event. >> >> My question is how are people managing this with re-usable components? For >> example, I have a tree and when selecting a node in that tree something >> should happen. But this is where it gets all polymorphic as _what_ happens >> depends on the client who instantiated the tree. I can see the following >> ways forward: >> >> - tree is configured with a 'context' key which is combined with the >> discriminator so rather than the tree emitting :node-selected it emits >> :consumer-a-node-selected. Consumer a can then handle >> consumer-a-node-selected and consumer b can handle (go on, guess) >> consumer-b-node-selected >> - a variation on the above involving writing your own dispatching logic... >> - tree doesn't use dispatch as the event bus, rather it takes in an instance >> of a Protocol: >> IRespondToTree >> (on-node-select [this node]) >> - tree is parameterised with a map of fns {:node-selected-fn ...} etc. >> >> How would you all handle it? (I am leaning towards the first one). >> >> -- >> 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.
