对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 相关文章推荐
JavaScript中检测变量是否存在遇到的一些问题
Nov 11 Javascript
Blocksit插件实现瀑布流数据无限( 异步)加载
Jun 20 Javascript
javascript实现点击按钮让DIV层弹性移动的方法
Feb 24 Javascript
jQuery关键词说明插件cluetip使用指南
Apr 21 Javascript
javascript实现youku的视频代码自适应宽度
May 25 Javascript
jQuery封装的tab选项卡插件分享
Jun 16 Javascript
浅析jQuery 遍历函数,javascript中的each遍历
May 25 Javascript
JS实现iframe自适应高度的方法(兼容IE与FireFox)
Jun 24 Javascript
JS定时检测任务任务完成后执行下一步的解决办法
Dec 22 Javascript
浅谈vuepress 踩坑记
Apr 18 Javascript
详解如何写出一个利于扩展的vue路由配置
May 16 Javascript
关于vue3默认把所有onSomething当作v-on事件绑定的思考
May 15 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
人大复印资料处理程序_查询篇
2006/10/09 PHP
PHP反转字符串函数strrev()函数的用法
2012/02/04 PHP
ThinkPHP入口文件设置及相关注意事项分析
2014/12/05 PHP
php获取'/'传参的值简单方法
2017/07/13 PHP
ThinkPHP 3使用OSS的方法
2018/07/19 PHP
PHP页面静态化――纯静态与伪静态用法详解
2020/06/05 PHP
YUI 读码日记之 YAHOO.util.Dom - Part.1
2008/03/22 Javascript
Javascript/Jquery——简单定时器的多种实现方法
2013/07/03 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
javascript实现瀑布流自适应遇到的问题及解决方案
2015/01/28 Javascript
JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码
2015/09/15 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
Bootstrap中的表单验证插件bootstrapValidator使用方法整理(推荐)
2016/06/21 Javascript
jQuery与js实现颜色渐变的方法
2016/12/30 Javascript
ztree简介_动力节点Java学院整理
2017/07/19 Javascript
vue.js做一个简单的编辑菜谱功能
2018/05/08 Javascript
Vue多组件仓库开发与发布详解
2019/02/28 Javascript
使用localStorage替代cookie做本地存储
2019/09/25 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
Vue项目打包部署到apache服务器的方法步骤
2021/02/01 Vue.js
初步剖析C语言编程中的结构体
2016/01/16 Python
详谈Python2.6和Python3.0中对除法操作的异同
2017/04/28 Python
使用 python pyautogui实现鼠标键盘控制功能
2019/08/04 Python
python日志模块logbook使用方法
2019/09/19 Python
pandas数据处理进阶详解
2019/10/11 Python
python多维数组分位数的求取方式
2020/03/03 Python
python 多线程死锁问题的解决方案
2020/08/25 Python
Tod’s英国官方网站:意大利奢华手工制作手袋和鞋履
2019/03/15 全球购物
2014年元旦促销活动方案
2014/02/22 职场文书
机关道德讲堂实施方案
2014/03/15 职场文书
幼儿园安全责任书
2014/04/14 职场文书
公务员爱岗敬业演讲稿
2014/08/26 职场文书
兵马俑导游词
2015/02/02 职场文书
2015年幼儿园卫生保健工作总结
2015/05/12 职场文书
2016春季田径运动会广播稿
2015/12/21 职场文书
Linux系统下MySQL配置主从分离的步骤
2022/03/21 MySQL