您好,登錄后才能下訂單哦!
本文實例講述了Vue 自定義指令功能。分享給大家供大家參考,具體如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>自定義指令</title> <script type="text/javascript" src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script> </head> <body> <h2>自定義指令</h2> <hr> <div id="app"> <div v-json="color">{{num}}</div> <p><button @click="add">加一</button></p> </div> <p> <button οnclick="unbind()">解綁</button> </p> </body> </html> <script> function unbind(){ //vue 提供的解綁指令 app.$destroy() } //自定義指令 有五個鉤子函數(聲明周期) //bind: 只調用一次。指令第一次綁定到元素時調用。用這個鉤子函數可以定義一個綁定時執行一次的初始化動作 //inserted: 被綁定元素插入父節點時調用 (父節點存在即可調用,不必存在于document中) // update: 被綁定于元素所在的模板更新時被調用,而無論綁定值是否發生變化 通過比較更新前后的綁定值,可以 忽略不必要的模板更新 //componentUpdated: 被綁定元素所在模板完成一次更新周期時調用 // unbind:只調用一次,指令與元素解綁時調用 Vue.directive('json',{ bind:function(el,binding){//被綁定 console.log('1 - bind'); el.style='color:'+binding.value; }, inserted:function(){//綁定到節點 console.log('2 - inserted'); }, update:function(){//組件更新 console.log('3 - update'); }, componentUpdated:function(){//組件更新完成 console.log('4 - componentUpdated'); }, unbind:function(){//解綁 console.log('5 - unbind'); } }); //自定義指令 // Vue.directive('json',function(el,binding){ // el.style='color:'+binding.value; // }); var app = new Vue({ el:'#app', data:{ num:1, color:'red' }, methods:{ add:function(){ this.num++ } } }) </script>
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。
希望本文所述對大家vue.js程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。