欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vue封装指令的directives小功能

程序员文章站 2022-05-16 18:36:23
...

vue组件封装的时候我们需要注意的问题,事件监听的销毁是这样做的,生命周期钩子可以查询相关的文档

export default {
  inserted(el, bindings, vnode) {
    console.log(el, bindings, vnode);
    document.addEventListener("click", (e) => listener(e, el, bindings), false);
  },
  //组件卸载的时候销毁事件
  unbind(el, bindings) {  
    console.log("我被卸载了");
    document.removeEventListener("click", (e) => listener(e, el, bindings));
  },
};
  • 抽取出来的方法
const listener = (e, el, bindings) => {
  if (e.target == el || el.contains(e.target)) {
    return false;
  }
  bindings.value(); //真实的close事件
};

每天坚持一点,多积累,一定可以看到星辰大海