在使用 Datascript 时遇到一个看似奇怪的问题。不知何故,当我在不将其放入函数的情况下运行此查询时,一切正常。但是一旦将其包装在函数中,它就会返回数据库中每个实体的 :block/content 的值。我感到困惑,因为我过去从未在包装其他 Datascript 查询时遇到过任何问题。是否有任何比我更了解 Datascript 的人看到任何问题?
;; Works fine and returns the correct value
(ds/q '[:find ?block-text
:where
[?id :block/id "l_63xa4m1"]
[?id :block/content ?block-text]]
@conn)
;; Returns every value for `:block/content` in the db
(defn content-find
[id-passed]
(ds/q '[:find ?block-text
:where
[?id :block/id ?id-passed]
[?id :block/content ?block-text]]
@conn))
(content-find "l_63xa4m1")