vue的自定义指令的坑

因为一个滑动删除的需求,所以简单写了一份vue自定义指令删除事件。

vue的自定义指令,分为全局和局部的,两者写法其实差距并不大。举例:

<li  v-moveDel v-for="(item,index)>

//全局
Vue.directive('moveDel',{
  bind: function (el,binding) {
    el.style.background = 'red';//el即为被绑定的元素
    console.log(binding.value.index);//binding.value可以获取被绑定元素的一些属性值
    });
  },
 unbind: function () {
   //
  }
});

//局部
directives:{
       moveDel:{
        bind: function (el,binding) {
         
        },
        unbind: function () {
          //
        }
  }    

  一切都很顺利,照着上面的格式写自定指令都ok,但在绑定数据绑定自定义指令时,发现一个被渲染的数据获取的高度为null,其余的反而完好。

  解决办法,加上一个一次性的定时器就ok了,这可能就是vue的自定义指定绑定的一个坑。

原文地址:https://www.cnblogs.com/zhoujx1066/p/6826548.html