如何使用 ClojureScript 在 Reagent 中将数组设置为状态

How to set array as state in Reagent using ClojureScript

我正在尝试创建一个名为 items 的状态,但是我的代码给出了一个错误,我不确定为什么当我尝试访问这些项目并对其进行迭代时。我在这里做错了什么?

(def items (r/atom ["test" "test2"]))

(defn home-page []  
  [:div#main
    [:section.section
      [:h1#s-one-greeting "Hello, I'm testing"]
      [:h2#s-one-greeting-two "blah blah blah"]]
    [:section.section
      [:p "Work history"]
      [:p "yada"]
      [:p "yada"]
      [:ul
        (for [item items]
          ^{:key item} [:li "item " item])]]])

您正在访问 items 而没有取消引用它。所以你试图 for 循环试剂 atom 但它不起作用。只需将其切换为 (for [item @items] ...) 就可以了。