This is a note to myself.

The rule is: given [f a b c], reagent caches the react class instance as a 
member on the javascript function instance.

Another way to word that is, f must be === for the underlying react class 
to be stable. Extending f with IEquiv will not work here (IEquiv does work 
on arguments, but not the component itself).

A third way to word this is you can only do the same as what you can do 
with (def x (reagent/create-class ...)). No partialing or closure 
gymnastics is possible if you care about stable reactions.

https://github.com/reagent-project/reagent/blob/master/src/reagent/impl/component.cljs#L68-L72

where c is the javascript function object

https://github.com/reagent-project/reagent/blob/master/src/reagent/interop.clj#L25

-- 
You received this message because you are subscribed to the Google Groups 
"Reagent-Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to reagent-project+unsubscr...@googlegroups.com.
To post to this group, send email to reagent-project@googlegroups.com.
Visit this group at https://groups.google.com/group/reagent-project.
For more options, visit https://groups.google.com/d/optout.

Reply via email to