Domina의 터치 시작 이벤트에서 '터치'또는 'changedTouches'목록을 가져 오는 데 문제가 있습니다. 여기clojurescript : 터치 이벤트 및 Domina
내입니다 : 여기에
(ns myproj
(:require-macros [hiccups.core :as h])
(:require [domina :as dom]
[hiccups.runtime :as hiccupsrt]
[domina.events :as ev]
[cljs.reader :refer [read-string]]
[wsosc :as wo]
[clojure.browser.repl :as repl]
))
그리고 내 touchstart 이벤트 핸들러의 :
이(defn touchstart [evt]
; store event in an atom for repl access
(swap! de (fn [x] evt))
; print something to html to show a result (no console on the phone)
(dom/set-text! (dom/by-id "result") (str "blah" evt))
; hopefully someday extract touch coordinates here.
(let [rct (.getBoundingClientRect (dom/by-id "osccanvas"))
;touchlist1 (get evt "changedTouches")
;touchlist2 (.changedTouches evt)
;touchlist3 (.-changedTouches evt)
;kies (keys evt)]
wat (:type evt) ; this works
;wat (ev/raw-event evt) ; this works
;touchlist (.-changedTouches evt)]
;touch (.item touchlist 1)]
]
(dom/set-text! (dom/by-id "result") (str "touchstart touch:" wat))))
'드'내가 디버그에 사용하기 위해 노력하고있어 원자이다 물건을 필요로한다. 이벤트에서 : 유형을 가져올 수 있지만 그게 전부입니다. ev/raw-event를 제외하고는 다른 주석 처리 된 것들은 거의 작동하지 않습니다. raw-event는 최소한 저에게 repl에서 상당히 변하지 않는 객체를 반환합니다. 내가 바꾸면! 원시 이벤트와 드 그것은 다음과 같습니다
ClojureScript:myproj>@de
#<[object Object]>
나는이 정보를 추출하는 방법을 몰라, 그것은 같은 것들 (키 X) 또는 (.keys의 x)는 꽤 응답하지 않는 것 등
이상한 점은 위의 함수에서 (: type evt)를 호출 할 수 있지만 evt에 de를 할당하면 repl에서 'de'atom과 동일한 작업을 수행 할 수 없다는 것입니다 (예 : type @de).