1
我想了解輸入字段在Reagent中如何工作。在ClojureScript/Reagent中綁定on-change
我第一次嘗試綁定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]])
我已經成功地desugar的->
宏:
(fn [evt]
(reset! ratom (-> evt .-target .-value)))
;; is the same as
(fn [evt]
(reset!
ratom
(.-value (.-target evt))))
- 什麼
.-value
和.-target
嗎? - 我在哪裏可以找到
.-value
和.-target
的文檔? - 爲什麼選擇更復雜的語義?
啊,這就是爲什麼我沒有找到任何搜索ClojureScript文檔的原因。 任何推薦的JavaScript文檔來源?我從Mozilla和W3Schools找到了文檔,但我缺少代碼示例。 我不是一個Web開發人員,因爲你可能已經猜到了! – Teodor
我從Github ClojureScript代碼開始,然後使用Google來解決特定的JavaScript問題。如果你不能以這種方式工作,那麼可以在ClojureScript Slack組織或者在SO處詢問。有點讓人擔心的是CSS! –