Skip to main content
Latest
class EventListenerReconciler
import { EventListenerReconciler } from "https://deno.land/x/dom_diff@1.0.0-beta.2/mod.ts";

Event listener reconciler.

Examples

Example 1

import { EventListenerReconciler, setupEventListeners } from "https://deno.land/x/dom_diff/reconcilers/event_listener.ts";
import { assertSpyCalls, spy } from "https://deno.land/std/testing/mock.ts";

const getEventListeners = setupEventListeners();
const reconciler = new EventListenerReconciler(getEventListeners);
const oldNode = document.createElement("button");
const newNode = document.createElement("button");
const listener = spy(() => {});
newNode.addEventListener("click", listener);

const patches = reconciler.diff(oldNode, newNode);
for (const patch of patches) reconciler.update(oldNode, patch);

oldNode.dispatchEvent(new MouseEvent("click"));
assertSpyCalls(listener, 1);

Constructors

new
EventListenerReconciler(getEventListeners: GetEventListeners)

Methods

diff(oldNode: object, newNode: object): Generator<EventListenerPatch>