Bar*_*teş 5 frontend clojure electric-clojure
我开始学习 Electric Clojure 并开始制作一些教育项目(非常简单,因为不幸的是没有关于前端开发方面、dom 元素和实现等的详细文档,甚至更多我没有前端开发经验)并且我需要当用户输入新值时提供一些帮助我希望在表中看到该值。
(e/defn TableApp []
(e/client
(let [!userName (atom "")
!email (atom "")]
(dom/input (dom/props {:placeholder "Please write your username..."})
(dom/on "keydown"
(e/fn [enter]
(when (= "Enter" (.-key enter))
(when-some [givenValue (contrib.str/empty->nil (-> enter .-target .-value))]
(reset! !userName givenValue)
(set! (.-value dom/node)
(dom/props {:placeholder (str "Given Username= " givenValue)})))))))
(dom/input (dom/props {:placeholder "Please write your email..."})
(dom/on "keydown"
(e/fn [enter]
(when (= "Enter" (.-key enter))
(when-some [givenValue (contrib.str/empty->nil (-> enter .-target .-value))]
(reset! !email givenValue)
(set! (.-value dom/node)
(dom/props {:placeholder (str "Given email= " givenValue)})))))))
(dom/table (dom/props {:class "hyperfiddle"})
(e/client
(dom/tr (dom/td (dom/text (str "Username: " (e/watch !userName)))))
(dom/tr (dom/td (dom/text (str "Email: " (e/watch !email))))))))))
Run Code Online (Sandbox Code Playgroud)
当我输入一个值时,我可以在表中看到该值,正如您在此处看到的那样。

在这里,当我输入一个覆盖旧变量的值时(我知道我是这样写代码的,因为我不知道如何做到这一点,因为我在这里寻求帮助。(就像以表格格式一样))

最好的方法是什么?(如果可能的话,我想用提交按钮而不是输入来控制值输入,这将是我未来学习的一个很好的例子)非常感谢!