欢迎!有关此如何工作的更多信息,请参阅关于页面。
我的函数必须接受一个文档元素并调用element.webkitRequestFullscreen()或元素.mozRequestFullscreen(),具体取决于浏览器。
(defn somfn[elem] ..
(exists? elem.requestFullscreen)
..
无法编译。我得到以下消息 js/elem 被局部阴影覆盖
js/elem 被局部阴影覆盖
我该如何修复它?
在返回特真值的场景中,您可以通过常规访问检查属性
(if elem.requestFullScreen ...)
或更正确的版本
(if (.-requestFullScreen elem) ...)
这些方法在属性可能存在但可能是 nil 或 false 的情况下不起作用。
nil
false
您可以使用goog.object API。
goog.object
`(ns my.app(:require [goog.object :as gobj]))(defn somefn[elem](if (gobj/containsKey elem "requestFullscreen")
`
...))
https://google.github.io/closure-library/api/goog.object.html