値を取得するためにいつカーソルを逆参照する必要があるかを理解しようとしています。
om cursors wikiでは、イベント ハンドラーはレンダリング フェーズの一部ではないと見なされるため、ハンドラー内のカーソルは drefed にする必要があると述べています。Basic-tutorialにも同じことが示されています。
(defn contact-view [contact owner]
(reify
om/IRenderState
(render-state [this {:keys [delete]}]
(dom/li nil
(dom/span nil (display-name contact))
(dom/button #js {:onClick (fn [e] (put! delete @contact))} "Delete")))))
しかし、TodoMVC コードでは、ハンドラー (onclick、onchange...) はカーソルを逆参照せずに使用します。
(dom/button
#js {:className "destroy"
:onClick (fn [_] (put! comm [:destroy todo]))}))
それで、正しい方法は何ですか?
ありがとうございました。