directives
click-outside
通过Node.contains
判断是否在外部点击,如果是则调用binding函数
const isContainedByEl =
el.contains(mouseUpTarget) || el.contains(mouseDownTarget)
通过全局Map变量nodeList维护el与handler的映射关系
nodeList.get(el)!.push({
documentHandler: createDocumentHandler(el, binding),
bindingFn: binding.value,
})
mousewheel
在el上绑定wheel
事件
element.addEventListener('wheel', fn, { passive: true })