2
我有一个结构类似于以下树添加到树中的节点:使用postwalk
(def tree
[:ul
[:li
[:input]]
[:li
[:input]]])
我想插入一个[:按钮]每个后[:输入]:
[:ul
[:li
[:input]
[:button]]
[:li
[:input]
[:button]]
我写了下面的代码:
(postwalk
(fn [x]
(if (and (vector? x) (= :input (first x)))
(list x [:button])
x))
tree)
主要生产:
[:ul
[:li
([:input] [:button])]
[:li
([:input] [:button])]]
这是几乎我想要的东西,除了[:输入]和[:键]向量 现在在列表中。
有没有一种习惯的方式来“插入”两个节点,而不必将它们放在一起列表?
(注:打嗝产生与目前的结果所需的标记,但我想避免重挫我的树。)