It just depends, but yes that's one way to do it. David
On Wed, Oct 15, 2014 at 4:31 PM, Peter Jaros <[email protected]> wrote: > So, in this case, would you want to grab the om.core/value during the render > and have the click handler close over that instead of the cursor? That is, > put!ting it on the channel would mean “delete this thing I’m displaying, if > it still exists”. > > Peter > > > On Wed, Oct 15, 2014 at 12:39 PM, David Nolen <[email protected]> > wrote: >> >> Yes that's correct. om.core/value will give you the rendered value, >> deref will give you the current state. >> >> David >> >> On Wed, Oct 15, 2014 at 12:38 PM, Leon Grapenthin >> <[email protected]> wrote: >> > On Tuesday, October 14, 2014 7:58:28 PM UTC+2, David Nolen wrote: >> >> om.core/value, om.core/path, om.core/state are not going to change and >> >> >> >> can be used. >> > >> > Thank you for clearing that up >> > >> >> In the case of om.core/value the value may well be stale >> >> >> >> - thus deref - but even then the value may have been deleted. >> >> >> > >> > With om.core/value the user can rely that only the value /she can see/ >> > could be deleted (if it is still up to date), because it is consistent with >> > what was rendered to her. >> > >> > With deref, a value that /she has not yet seen/ could be deleted, >> > because it could have been changed but not yet rendered. >> > >> > Is this correct? >> > >> >> >> >> >> >> David >> >> >> >> >> >> >> >> On Tue, Oct 14, 2014 at 1:43 PM, Leon Grapenthin >> >> >> >> <[email protected]> wrote: >> >> >> >> > Thank you, Moritz. However, since it is not documented, how do you >> >> > know? By study of the implementation? >> >> >> >> > >> >> >> >> > Since there is not a single defn- in om.core, is it really API >> >> > exposed and there to stay? >> >> >> >> > >> >> >> >> > Would using it like I suggested in the example really have >> >> > consistency benefits? >> >> >> >> > >> >> >> >> > >> >> >> >> > On Sunday, October 12, 2014 11:48:54 PM UTC+2, Moritz Ulrich wrote: >> >> >> >> >> Am 12.10.2014 21:33 schrieb "Leon Grapenthin" >> >> >> <[email protected]>: >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> > Regarding this >> >> >> > (https://github.com/swannodette/om/wiki/Basic-Tutorial#debugging-om-components) >> >> >> > section of the om tutorial: >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> > Couldn't the click handler in theory delete a version of the >> >> >> > contact that has not been rendered to the user? >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> > E. g. Wouldn't >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> > #js {:onClick (let [rendered-contact (into {} contact)] >> >> >> >> >> >> >> >> >> >> > (fn [e] (put! delete rendered-contact)))} >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> > be the only way to make the click handler consistent with what is >> >> >> > displayed to the user? - If so, could we get an operation to >> >> >> > retrieve the >> >> >> > rendered value during the render phase as non-cursor to close over it >> >> >> > (probably also deref)? >> >> >> >> >> >> >> >> >> >> `om/value' >> >> >> >> >> >> >> >> >> >> > If not, how should I take "Thus you are not allowed to use cursors >> >> >> > outside of the render phase as this is almost certainly a >> >> >> > concurrency bug!" >> >> >> > - How exactly is that /not/ what we are doing in the click handler >> >> >> > of the >> >> >> > tutorial? >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> > If it doesn't make a difference, please explain why. >> >> >> >> >> >> >> >> >> >> > >> >> >> >> >> >> >> >> >> >> > -- >> >> >> >> >> >> >> >> >> >> > 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. >> >> -- >> 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. > > > > > -- > Visuals: http://youtube.com/peeja > Words: http://blog.peeja.com/ > Conversation: (603) 548-1203 > > -- > 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.
