如何使用 ClojureScript 打开一个新的 window?
How do I open a new window using ClojureScript?
我需要使用 ClojureScript 打开一个新选项卡。
(js/window.open "http://localhost/go/somewhere")
我收到以下错误:未捕获类型错误:window.open 不是函数
它无助于设置它,因为没有任何反应,我认为这是因为它是一个函数而不是一个变量。
(set! js/window.open "http://localhost/go/somewhere")
我知道这是可能的,因为我一开始就做对了。我已经忘记了我做了什么。
编辑:也试过:
(set! js/window.location.open endpoint)
(set! (js/window.location.open -location) endpoint)
(set! (.. js/window.location.open -location) endpoint)
这对我来说适用于 CLJS 回复:
(.open js/window "https://www.clojure.org")
但我必须确保允许弹出窗口:
在尝试使用 set!
时,您不小心在浏览器中 "overridden" window.open
window;所以 window.open
实际上不再是函数,可以调用。
在调用 window.open
并重新加载页面之前,请确保没有 set!
调用。您在 (js/window.open ,,,)
中使用的语法是正确的。
(js/window.open "https://example.com") ; works
(set! js/window.open "https://example.com")
(js/window.open "https://example.com")
; ⇒ TypeError: window.open is not a function
我需要使用 ClojureScript 打开一个新选项卡。
(js/window.open "http://localhost/go/somewhere")
我收到以下错误:未捕获类型错误:window.open 不是函数
它无助于设置它,因为没有任何反应,我认为这是因为它是一个函数而不是一个变量。
(set! js/window.open "http://localhost/go/somewhere")
我知道这是可能的,因为我一开始就做对了。我已经忘记了我做了什么。
编辑:也试过:
(set! js/window.location.open endpoint)
(set! (js/window.location.open -location) endpoint)
(set! (.. js/window.location.open -location) endpoint)
这对我来说适用于 CLJS 回复:
(.open js/window "https://www.clojure.org")
但我必须确保允许弹出窗口:
在尝试使用 set!
时,您不小心在浏览器中 "overridden" window.open
window;所以 window.open
实际上不再是函数,可以调用。
在调用 window.open
并重新加载页面之前,请确保没有 set!
调用。您在 (js/window.open ,,,)
中使用的语法是正确的。
(js/window.open "https://example.com") ; works
(set! js/window.open "https://example.com")
(js/window.open "https://example.com")
; ⇒ TypeError: window.open is not a function