gpt4 book ai didi

clojure - 附加到 Enlive 中的属性

转载 作者:行者123 更新时间:2023-12-01 08:14:20 24 4
gpt4 key购买 nike

是否可以使用 enlive 将值附加到属性?

例子:我有这个

<a href="/item/edit/">edit</a>

并且想要这个
<a href="/item/edit/123">edit</a>

我目前正在这样做:
(html/defsnippet foo "views/foo.html" [:#main]
[ctxt]
[:a] (html/set-attr :href (str "/item/edit/" (ctxt :id))))

但我不想将 URL 嵌入到我的代码中,只需将 id 附加到现有 URL
(html/defsnippet foo "views/foo.html" [:#main]
[ctxt]
[:a@href] (html/append (ctxt :id)))

最佳答案

@ddk 答案是正确的,但您可能更喜欢使用更通用的方法来解决问题

(defn update-attr [attr f & args]
(fn [node]
(apply update-in node [:attrs attr] f args))))

进而
(update-attr :href str "123")

关于clojure - 附加到 Enlive 中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12586849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com