0.2.1 • Published 6 years ago

observable-event-target v0.2.1

Weekly downloads
2
License
MIT
Repository
github
Last release
6 years ago

ObservableEventTarget

This is a sample implementation of ObservableEventTarget as outlined in the Observable spec.

Step one is to make this example work:

const displayImage = document.querySelector("#displayImage");

const image = new Image();
const load = image.on('load', { receiveError: true, once: true });
image.src = "./possibleImage";

load.subscribe({
  next(e) {
    displayImage.src = e.target.src;
  },
  error(e) {
    displayImage.src = "errorloading.png";
  },
  complete() {
    // this notification will be received after next ()
    // as a result of the once member being set to true
  }
})

Interface as defined by the spec:

interface Event { /* https://dom.spec.whatwg.org/#event */ }

dictionary OnOptions {
  // listen for an "error" event on the EventTarget,
  // and send it to each Observer's error method
  boolean receiveError = false;

  // member indicates that the callback will not cancel
  // the event by invoking preventDefault().
  boolean passive = false;,

  // handler function which can optionally execute stateful
  // actions on the event before the event is dispatched to
  // Observers (ex. event.preventDefault()).
  EventHandler handler = null;

  // member indicates that the Observable will complete after
  // one event is dispatched.
  boolean once = false;
}

interface ObservableEventTarget extends EventTarget {
  Observable<Event> on(DOMString type, optional (OnOptions or boolean) options);
}

This implementation obviously draws heavily from the example implementation but was re-implemented from scratch as a learning exercise.

0.2.1

6 years ago

0.2.0

6 years ago

0.1.0

6 years ago

0.0.1

6 years ago