作为Clojurescript的新手,在我看来,每个Clojurescript项目都会有一些这样的代码片段:
(extend-type js/NodeList
ISeqable
(-seq [array] (array-seq array 0)))
为什么不是核心库的这一部分?
答案 0 :(得分:10)
你必须认为clojurescript是javascript作为一种语言的编译器,而不仅仅是浏览器JavaScript。您也可以在其他平台中使用它,例如nodejs或不存在NodeList的QT库(因为它是Dom api的一部分,而不是标准语言)。
答案 1 :(得分:0)
如果您正在寻找一种通过NodeList
创建序列的方法,则可以使用array-seq
函数。
(array-seq (js/document.querySelectorAll "div"))
答案 2 :(得分:0)
在 ClojureScript 1.10.741 中应用了 https://clojure.atlassian.net/browse/CLJS-3199 的补丁后,from ReaderEntity r
where exists (
select 1
from r.subscriptions s
where s.subscriptionName in :subscriptionList
and s.subscriptionName not in :restrictedSubscriptionList
)
现在实际上是开箱即用的。