對Vue2 自定義全局指令Vue.directive和指令的生命周期介紹
在Vue中,自定義指令的生命周期,有5個(gè)事件鉤子:1-bind 被綁定, 2-inserted 被插入, 3-update 開始更新, 4-componentUpdated 更新完成,5-unbind 解除綁定。我們可以設(shè)置指令在某一個(gè)事件發(fā)生時(shí)的具體行為。
例子如下:
頁面一進(jìn)后,
在控制臺(tái)中設(shè)置一個(gè)新值:通過控制臺(tái)設(shè)置的新name
再設(shè)置一個(gè)新值:通過控制臺(tái)設(shè)置的新name
最后點(diǎn)擊解綁,解除綁定(解除綁定之后,id="app"的Dom和vm的實(shí)例之間解除mvvm的綁定關(guān)系):

代碼:
<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和指令的生命周期介紹就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Vue3實(shí)現(xiàn)全局loading指令的示例詳解
- vue全局注冊自定義指令防抖解析
- vue全局自定義指令和局部自定義指令的使用
- Vue全局自定義指令Modal拖拽的實(shí)踐
- vue全局自定義指令-元素拖拽的實(shí)現(xiàn)代碼
- vue directive定義全局和局部指令及指令簡寫
- vue3的自定義指令directives實(shí)現(xiàn)
- vue 自定義指令directives及其常用鉤子函數(shù)說明
- vue?filters和directives訪問this的問題詳解
- vue通過指令(directives)實(shí)現(xiàn)點(diǎn)擊空白處收起下拉框
- 詳解vue + vuex + directives實(shí)現(xiàn)權(quán)限按鈕的思路
- vue全局指令文件?directives詳解
相關(guān)文章
在vue中獲取微信支付code及code被占用問題的解決方法
這篇文章主要介紹了在vue中獲取微信支付code及code被占用問題的解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-04-04
vue實(shí)現(xiàn)pdf導(dǎo)出解決生成canvas模糊等問題(推薦)
最近公司項(xiàng)目需要,利用vue實(shí)現(xiàn)pdf導(dǎo)出,從而保存到本地打印出來,說起來好像也很容易,具體要怎么實(shí)現(xiàn)呢?下面小編給大家?guī)砹藇ue實(shí)現(xiàn)pdf導(dǎo)出解決生成canvas模糊等問題,需要的朋友參考下吧2018-10-10
利用vue.js實(shí)現(xiàn)被選中狀態(tài)的改變方法
下面小編就為大家分享一篇利用vue.js實(shí)現(xiàn)被選中狀態(tài)的改變方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-02-02
一文詳解Vue3組件通信輕松玩轉(zhuǎn)復(fù)雜數(shù)據(jù)流
在大型Vue項(xiàng)目中,組件通信如同神經(jīng)網(wǎng)絡(luò)般貫穿整個(gè)應(yīng)用,這篇文章將為大家詳細(xì)介紹一下Vue3中的組件通信方式,有需要的小伙伴可以了解下2025-02-02

