我对导入和需要语义有点困惑..
我试图在Google的clojure库的dom部分中使用查询功能。
(import '(goog.dom query))
(def q query)
不幸的是,它不能使用require:as:
(require '(goog.dom [query :as q]))
通过这个机会,我发现不推荐使用查询功能。我不太明白为什么。我只是在寻找一个简单的非幻想抽象(相当方便的简化)来进行dom操作/选择。我知道有很多,我只需要一个快捷方式,不为每个小项目编写像by-id select这样的帮手。
答案 0 :(得分:2)
你走在正确的道路上。在这种情况下,您应该使用require。导入适用于您要构建的类。
%BER-1-887373: Group <Connect> User <gacan> IP <72.34.184.200> No IPv6 address available
如果您使用的是数字轮盘,则可以执行此操作
(ns foo
(:require [goog.dom :as dom])
(:import [goog History]))
(dom/getElement "app")
(History.)
或
(require 'goog.dom)
(goog.dom/getElement "app")
或类似。
(require '[goog.dom :refer [getElement]])
(getElement "app")
不再可用,但有很多有用的函数,比如getElement getElementByClass getElementsByTagNameAndClass等
对于repl交互,您可能更好地使用querySelector https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector:
query