对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 相关文章推荐
greybox——不开新窗口看新的网页
Feb 20 Javascript
javascript trim函数在IE下不能用的解决方法
Sep 12 Javascript
javascript引擎长时间独占线程造成卡顿的解决方案
Dec 03 Javascript
基于Javascript实现返回顶部按钮
Feb 29 Javascript
jQuery防止重复绑定事件的解决方法
May 14 Javascript
jquery显示隐藏元素的实现代码
May 19 Javascript
Vue.js报错Failed to resolve filter问题的解决方法
May 25 Javascript
jQuery Password Validation密码验证
Dec 30 Javascript
JQuery和HTML5 Canvas实现弹幕效果
Jan 04 Javascript
jQuery验证表单格式的使用方法
Jan 10 Javascript
基于Bootstrap表单验证功能
Nov 17 Javascript
微信小程序新闻网站详情页实例代码
Jan 10 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遍历目录viewDir函数
2009/12/15 PHP
shell脚本作为保证PHP脚本不挂掉的守护进程实例分享
2013/07/15 PHP
PHP对象递归引用造成内存泄漏分析
2014/08/28 PHP
PHP图像裁剪缩略裁切类源码及使用方法
2016/01/07 PHP
thinkPHP简单导入和使用阿里云OSSsdk的方法
2017/03/15 PHP
thinkPHP框架整合tcpdf插件操作示例
2018/08/07 PHP
一种JavaScript的设计模式
2006/11/22 Javascript
javascript实现的像java、c#之类的sleep暂停的函数代码
2010/03/04 Javascript
jQuery第三课 修改元素属性及内容的代码
2010/03/14 Javascript
js匿名函数的调用示例(形式多种多样)
2014/08/20 Javascript
浅谈JavaScript实现面向对象中的类
2014/12/09 Javascript
基于Bootstrap3表格插件和分页插件实例详解
2016/05/17 Javascript
Bootstrap被封装的弹层
2016/07/20 Javascript
jQuery中clone()函数实现表单中增加和减少输入项
2017/05/13 jQuery
vue2.0 路由不显示router-view的解决方法
2018/03/06 Javascript
vue keep-alive请求数据的方法示例
2018/05/16 Javascript
JS中注入eval, Function等系统函数截获动态代码
2019/04/03 Javascript
Nodejs实现图片上传、压缩预览、定时删除功能
2019/10/25 NodeJs
JavaScript实现无限轮播效果
2020/11/19 Javascript
[05:43]VG.R战队教练Mikasa专访:为目标从未停止战斗
2016/08/02 DOTA
python过滤字符串中不属于指定集合中字符的类实例
2015/06/30 Python
Python验证码识别的方法
2015/07/10 Python
python中的随机函数random的用法示例
2018/01/27 Python
python微信跳一跳游戏辅助代码解析
2018/01/29 Python
Python 利用pydub库操作音频文件的方法
2019/01/09 Python
python使用tkinter库实现五子棋游戏
2019/06/18 Python
python3中eval函数用法使用简介
2019/08/02 Python
Python : turtle色彩控制实例详解
2020/01/19 Python
python线程join方法原理解析
2020/02/11 Python
python实现简单颜色识别程序
2020/02/19 Python
荷兰鞋子在线:Nelson Schoenen
2017/12/25 全球购物
Daniel Wellington官方海外旗舰店:丹尼尔惠灵顿DW手表
2018/02/22 全球购物
先进党员事迹材料
2014/12/24 职场文书
大学生自荐书范文
2015/03/05 职场文书
酒店财务部岗位职责
2015/04/14 职场文书
Python读取文件夹下的所有文件实例代码
2021/04/02 Python