对Vue2 自定义全局指令Vue.directive和指令的生命周期介绍


Posted in Javascript onAugust 30, 2018

在Vue中,自定义指令的生命周期,有5个事件钩子:1-bind 被绑定, 2-inserted 被插入, 3-update 开始更新, 4-componentUpdated 更新完成,5-unbind 解除绑定。我们可以设置指令在某一个事件发生时的具体行为。

例子如下:

页面一进后,

在控制台中设置一个新值:通过控制台设置的新name

再设置一个新值:通过控制台设置的新name

最后点击解绑,解除绑定(解除绑定之后,id="app"的Dom和vm的实例之间解除mvvm的绑定关系):

对Vue2 自定义全局指令Vue.directive和指令的生命周期介绍

代码:

<h1>自定义指令及其生命周期</h1>
<div id="app">
 <div v-mydirective.modify1.mofify22="mycolor">
  {{ name }}
 </div>
</div>
<button onclick="unbindApp()">解绑</button>
<script>
 function unbindApp() {
  vm.$destroy();
 }
 Vue.directive("mydirective",{
  bind:function (el, binding, vnode) { //1-被绑定
   console.log("1-bind 被绑定");
   console.log("el:",el);
   console.log("binding:",binding);
   console.log("vnode:",vnode);
   el.style.color=binding.value;
  },
  inserted:function (el, binding, vnode) { //2-被插入
   console.log("2-inserted 被插入");
  },
  update:function (el, binding, vnode) { //3-更新
   console.log("3-update 更新");
  },
  componentUpdated:function (el, binding, vnode) { //4-更新完成
   console.log("4-componentUpdated 更新完成");
  },
  unbind:function (el, binding, vnode) { //5-解绑
   console.log("5-unbind 解绑");
  }
 });
 
 var vm=new Vue({
  el:"#app",
  data:{
   mycolor:"blue",
   name:"mydirective指令"
  }
 });
 
</script>

以上这篇对Vue2 自定义全局指令Vue.directive和指令的生命周期介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
formValidator3.3的ajaxValidator一些异常分析
Jul 12 Javascript
详解JavaScript函数绑定
Aug 18 Javascript
JS匀速运动演示示例代码
Nov 26 Javascript
jQuery产品间断向下滚动效果核心代码
May 08 Javascript
jQuery根据ID获取input、checkbox、radio、select的示例
Aug 11 Javascript
js实现仿QQ秀换装效果的方法
Mar 04 Javascript
jQuery增加自定义函数的方法
Jul 18 Javascript
JavaScript生成SQL查询表单的方法
Aug 13 Javascript
使用vue-aplayer插件时出现的问题的解决
Mar 02 Javascript
Vue中保存数据到磁盘文件的方法
Sep 06 Javascript
小程序中设置缓存过期的实现方法
Jan 14 Javascript
Vue-cli3生成的Vue项目加载Mxgraph方法示例
May 31 Javascript
原生JS实现简单的倒计时功能示例
Aug 30 #Javascript
JavaScript fetch接口案例解析
Aug 30 #Javascript
vue组件表单数据回显验证及提交的实例代码
Aug 30 #Javascript
原生JS实现的简单小钟表功能示例
Aug 30 #Javascript
使用Node搭建reactSSR服务端渲染架构
Aug 30 #Javascript
webpack4+Vue搭建自己的Vue-cli项目过程分享
Aug 29 #Javascript
JS实现的input选择图片本地预览功能示例
Aug 29 #Javascript
You might like
php计算十二星座的函数代码
2012/08/21 PHP
thinkphp使用phpmailer发送邮件的方法
2014/11/24 PHP
php中文验证码实现方法
2015/06/18 PHP
javascript数组组合成字符串的脚本
2021/01/06 Javascript
javascript instanceof 内部机制探析
2010/10/15 Javascript
基于jQuery的为attr添加id title等效果的实现代码
2011/04/20 Javascript
从jQuery.camelCase()学习string.replace() 函数学习
2011/09/13 Javascript
拖动table标题实现改变td的大小(css+js代码)
2013/04/16 Javascript
简单实用jquery版三级联动select示例
2013/07/04 Javascript
判断输入是否为空,获得输入类型的JS代码
2013/10/30 Javascript
jQuery把表单元素变为json对象
2013/11/06 Javascript
js获取当前月的第一天和最后一天的小例子
2013/11/18 Javascript
排序算法的javascript实现与讲解(99js手记)
2014/09/28 Javascript
通过JS判断联网类型和连接状态的实现代码
2015/04/01 Javascript
Boostrap模态窗口的学习小结
2016/03/28 Javascript
JS在一定时间内跳转页面及各种刷新页面的实现方法
2016/05/26 Javascript
Angular Module声明和获取重载实例代码
2016/09/14 Javascript
JavaScript 计算笛卡尔积实例详解
2016/12/02 Javascript
微信小程序 Windows2008 R2服务器配置TLS1.2方法
2016/12/05 Javascript
JS判断指定dom元素是否在屏幕内的方法实例
2017/01/23 Javascript
jquery uploadify如何取消已上传成功文件
2017/02/08 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
解决layui的form里的元素进行动态生成,验证失效的问题
2019/09/14 Javascript
多个Vue项目部署到服务器的步骤记录
2020/10/22 Javascript
为什么入门大数据选择Python而不是Java?
2018/03/07 Python
python多线程并发实例及其优化
2019/06/27 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
2019/11/08 Python
django序列化serializers过程解析
2019/12/14 Python
使用spring mvc+localResizeIMG实现HTML5端图片压缩上传的功能
2016/12/16 HTML / CSS
墨尔本复古时尚品牌:Dangerfield
2018/12/12 全球购物
一份婚庆公司创业计划书
2014/01/11 职场文书
优秀体育委员自荐书
2014/01/31 职场文书
个人担保书格式范文
2014/05/12 职场文书
2015年网络管理员工作总结
2015/05/21 职场文书
职工宿舍管理制度
2015/08/05 职场文书
centos环境下nginx高可用集群的搭建指南
2022/07/23 Servers