Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

On swannodette's previous blogpost, he wrote in Reactive style:

    (defn ex0-key-events [prevent-default?]
      (->> (events js/window "keydown" prevent-default?)
           (map key-event->keycode)
           (filter KEYS)
           (map key->keyword)))
Where did the `events` function (line 2) come from? Does it create a lazy dechunked seq which takes events from a buffered channel? Is it built atop RxJS?

(Sorry, I haven't yet used ClojureScript, only Clojure. Googling didn't help.)



My JavaScript isn't great, so I'm ignoring prevent-default?, but you can probably do something like this:

  (defn events [object type]
    (let [out (chan)]
      (.addEventListener object type (fn [e] (put! out e)))
      out))




Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: