Skip to content

Instantly share code, notes, and snippets.

@CarlMungazi
Created November 18, 2019 20:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save CarlMungazi/727ccba176f7c9ec69e2f93a4dbbff9f to your computer and use it in GitHub Desktop.
Save CarlMungazi/727ccba176f7c9ec69e2f93a4dbbff9f to your computer and use it in GitHub Desktop.
function updateEvent(vnode, key, value) {
if (vnode.events != null) {
if (vnode.events[key] === value) return
if (value != null && (typeof value === "function" || typeof value === "object")) {
if (vnode.events[key] == null) vnode.dom.addEventListener(key.slice(2), vnode.events, false)
vnode.events[key] = value
} else {
if (vnode.events[key] != null) vnode.dom.removeEventListener(key.slice(2), vnode.events, false)
vnode.events[key] = undefined
}
} else if (value != null && (typeof value === "function" || typeof value === "object")) {
vnode.events = new EventDict()
vnode.dom.addEventListener(key.slice(2), vnode.events, false)
vnode.events[key] = value
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment