我将尝试理解Reagent中输入字段的工作原理。
我首先尝试将
我已经成功将
我首先尝试将
on-change
绑定到一个简单的函数,该函数更改底层原子:(defonce app-state
(reagent/atom "Teodor"))
(defn page [ratom]
[:div
[:p
"Please enter your name: "
[:input {:on-change #(swap! ratom %)
:value @ratom}]]
[:p "Your name is " @ratom]])
...之前的方法没有起作用,但是这个方法可以:
(defonce app-state
(reagent/atom "Teodor"))
(defn page [ratom]
[:div
[:p
"Please enter your name: "
[:input {;:on-change #(swap! ratom %)
:on-change (fn [evt]
(reset! ratom (-> evt .-target .-value)))
:value @ratom}]]
[:p "Your name is " @ratom]])
我已经成功将
->
宏展开:(fn [evt]
(reset! ratom (-> evt .-target .-value)))
;; is the same as
(fn [evt]
(reset!
ratom
(.-value (.-target evt))))
.-value
和.-target
分别是什么意思?- 在哪里可以找到关于
.-value
和.-target
的文档? - 为什么选择更复杂的语义?