I read that part of the tutorial too lightly ...But I get the grasp of the idea ...
Thanks for looking into it! Cheers, Florian > Am Mittwoch, 9. April 2014 12:38:15 UTC+2 schrieb David Nolen: > On Wed, Apr 9, 2014 at 6:03 AM, Florian Salihovic <[email protected]> > wrote: > > > > (defn add-task-view > > "Component used to add new tasks." > > [app owner] > > (reify > > ;; when not implemented, add-new-task will throw an error is app > is passed. > > om/IInitState > > (init-state [this] > > {:tasks (:tasks(:project app))}) > > > > om/IRenderState > > (render-state [this state] > > (.log js/console "add-task-view#render-state") > > (dom/div nil > > (dom/h3 nil (i18n :task)) > > (dom/label nil > > (i18n :title) > > (dom/input #js {:type "text" :ref "new-task-title"})) > > (dom/label nil > > (i18n :description) > > (dom/input #js {:type "text" :ref "new-task-description"})) > > (dom/label nil > > (i18n :tags) > > (dom/input #js {:type "text" :ref "new-task-tags"})) > > (dom/div nil > > (dom/button #js {:onClick #(add-new-task (:tasks state) > owner)} "☑")))))) > > > > So my question basically is: is my soluation "idiomatic/clean" solution when > creating data in Om. > > > > Looking at this a bit more closely the last line is the real issue, `(:tasks > state)`. I assume previously that was `(:tasks app)`. That won't work and > this is in fact covered in the first tutorial explicitly. You need to access > `(:tasks state)` outside the event handler where it is an allowed operation: > > > > (let [tasks (:tasks app)] > (dom/div nil (dom/button #js {:onClick #(add-new-task tasks owner)} > "☑"))) > > > > HTH, > David -- 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.
