首页 > web前端 > H5教程 > 正文

Vue.directive()的图文详解

php中世界最好的语言
发布: 2018-03-27 15:36:58
原创
2015 人浏览过

这次给大家带来Vue.directive()的图文详解,使用Vue.directive()的注意事项有哪些,下面就是实战案例,一起来看一下。

官网实例:

https://cn.vuejs.org/v2/api/#Vue-directive

https://cn.vuejs.org/v2/guide/custom-directive.html

指令定义函数提供了几个钩子函数(可选):

bind: 只调用一次,指令第一次绑定到元素时调用,用这个钩子函数可以定义一个在绑定时执行一次的初始化动作。
inserted: 被绑定元素插入父节点时调用(父节点存在即可调用,不必存在于 document 中)。

update: 被绑定元素所在的模板更新时调用,而不论绑定值是否变化。通过比较更新前后的绑定值,可以忽略不必要的模板更新(详细的钩子函数参数见下)。

componentUpdated: 被绑定元素所在模板完成一次更新周期时调用。

unbind: 只调用一次, 指令与元素解绑时调用。

本人菜鸟型,看官网蒙圈,然后百度Vue.directive()的实例和用法,有的很高深,有的不健全,我贴上两个简单的demo,希望对看到的朋友有帮助:

1、官网给出的demo,刷新页面input自动获取焦点:

    

 

 

// 注册一个全局自定义指令 v-focus   Vue.directive('focus', {    // 当绑定元素插入到 DOM 中。     inserted: function (el,binding) {       // 聚焦元素        el.focus();    }  });  new Vue({    el:'#app'  });  // 注册一个全局自定义指令 v-focus Vue.directive('focus', {   // 当绑定元素插入到 DOM 中。   inserted: function (el,binding) {    // 聚焦元素    el.focus();  } }); new Vue({   el:'#app' });
登录后复制

2、一个拖拽的demo: 1)被拖拽的元素必须用position定位,才能被拖动;

2)自定义指令完成后需要实例化Vue,挂载元素;

3)inserted: 被绑定元素插入父节点时调用(父节点存在即可调用,不必存在于 document 中)。

 

    

拖拽one

    

拖拽two

 

 

 

拖拽one

 

拖拽two

[javascript] view plain copy print?Vue.directive('drag', {    inserted:function(el){      el.onmousedown=function(e){        let l=e.clientX-el.offsetLeft;        let t=e.clientY-el.offsetTop;        document.onmousemove=function(e){          el.style.left=e.clientX-l+'px';          el.style.top=e.clientY-t+'px';        };        el.onmouseup=function(){          document.onmousemove=null;          el.onmouseup=null;        }      }    }  })  new Vue({    el:'#app'  });
登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

使用H5做出添加禁止缩放

ionic2中怎么使用自动生成器

以上是Vue.directive()的图文详解的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!