欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Vue.directive 自定義指令

 更新時(shí)間:2019年03月27日 14:58:28   作者:大灰狼的小綿羊哥哥  
這篇文章主要介紹了Vue.directive 自定義指令,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

一、什么是全局API?

全局API并不在構(gòu)造器里,而是先聲明全局變量或者直接在Vue上定義一些新功能,Vue內(nèi)置了一些全局API,比如我們今天要學(xué)習(xí)的指令Vue.directive。說(shuō)的簡(jiǎn)單些就是,在構(gòu)造器外部用Vue提供給我們的API函數(shù)來(lái)定義新的功能。

二、Vue.directive自定義指令

我們?cè)诘谝患揪蛯W(xué)習(xí)了內(nèi)部指令,我們也可以定義一些屬于自己的指令,比如我們要定義一個(gè)v-jspang的指令,作用就是讓文字變成綠色。

在自定義指令前我們寫一個(gè)小功能,在頁(yè)面上有一個(gè)數(shù)字為10,數(shù)字的下面有一個(gè)按鈕,我們每點(diǎn)擊一次按鈕后,數(shù)字加1.

三、自定義指令中傳遞的三個(gè)參數(shù)

el: 指令所綁定的元素,可以用來(lái)直接操作DOM。

binding:  一個(gè)對(duì)象,包含指令的很多信息。

vnode: Vue編譯生成的虛擬節(jié)點(diǎn)。

四、自定義指令的生命周期

自定義指令有五個(gè)生命周期(也叫鉤子函數(shù)),分別是 bind,inserted,update,componentUpdated,unbind

  1. bind:只調(diào)用一次,指令第一次綁定到元素時(shí)調(diào)用,用這個(gè)鉤子函數(shù)可以定義一個(gè)綁定時(shí)執(zhí)行一次的初始化動(dòng)作。
  2. inserted:被綁定元素插入父節(jié)點(diǎn)時(shí)調(diào)用(父節(jié)點(diǎn)存在即可調(diào)用,不必存在于document中)。
  3. update:被綁定于元素所在的模板更新時(shí)調(diào)用,而無(wú)論綁定值是否變化。通過(guò)比較更新前后的綁定值,可以忽略不必要的模板更新。
  4. componentUpdated:被綁定元素所在模板完成一次更新周期時(shí)調(diào)用。
  5. unbind:只調(diào)用一次,指令與元素解綁時(shí)調(diào)用。
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <script type="text/javascript" src="../assets/js/vue.js"></script>
  <title>vue.directive 自定義指令</title>
</head>
<body>
  <h1>vue.directive 自定義指令</h1>
  <hr>
  <div id="app">
    <div v-jspang="color" id="aaa">
      {{num}}
    </div>
    <p>
      <button @click='jia'>加分</button>
    </p>
    <p>
      <button onclick='unbind()'>解綁</button>
    </p>
  </div>
 
  <script type="text/javascript">
 
    function unbind(){
      app.$destroy();
    }
 
    //自定義指令
    Vue.directive('jspang',{
      bind:function(el,binding,vnode){//被綁定
        /**
            var s=JSON.stringify;
            el.innerHTML = 
              'name:'    + s(binding.name) +'<br>' + 
              'value:'    + s(binding.value) +'<br>' + 
              'expression:' + s(binding.expression) +'<br>' ;
        **/
        el.style='color:'+binding.value;
         
 
        console.log('1 - bind');
      },
      inserted:function(){//綁定到節(jié)點(diǎn)
        console.log('2 - inserted');
      },
      update:function(){//組件更新
        console.log('3 - update');
      },
      componentUpdated:function(){//組件更新完成
        console.log('4 - componentUpdated');
      },
      unbind:function(){//解綁
        console.log('5 - unbind');
      }
 
    })
 
    var app=new Vue({
      el:'#app',
      data:{
        color:'green',
        num:10
      },
      methods:{
        jia:function(){
          this.num++;
        }
      }
    })
  </script>
</body>
</html>
bind:function(){//被綁定
   console.log('1 - bind');
},
inserted:function(){//綁定到節(jié)點(diǎn)
   console.log('2 - inserted');
},
update:function(){//組件更新
   console.log('3 - update');
},
componentUpdated:function(){//組件更新完成
   console.log('4 - componentUpdated');
},
unbind:function(){//解綁
   console.log('1 - bind');
}

以上所述是小編給大家介紹的Vue.directive 自定義指令詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 使用vue+element?ui實(shí)現(xiàn)走馬燈切換預(yù)覽表格數(shù)據(jù)

    使用vue+element?ui實(shí)現(xiàn)走馬燈切換預(yù)覽表格數(shù)據(jù)

    這次做項(xiàng)目的時(shí)候遇到需要切換預(yù)覽表格數(shù)據(jù)的需求,所以下面這篇文章主要給大家介紹了關(guān)于使用vue+element?ui實(shí)現(xiàn)走馬燈切換預(yù)覽表格數(shù)據(jù)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • sublime如何配置開發(fā)VUE環(huán)境自動(dòng)格式化代碼

    sublime如何配置開發(fā)VUE環(huán)境自動(dòng)格式化代碼

    這篇文章主要介紹了sublime如何配置開發(fā)VUE環(huán)境自動(dòng)格式化代碼問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vue實(shí)現(xiàn)選項(xiàng)卡及選項(xiàng)卡切換效果

    vue實(shí)現(xiàn)選項(xiàng)卡及選項(xiàng)卡切換效果

    這篇文章主要介紹了vue實(shí)現(xiàn)選項(xiàng)卡選項(xiàng)卡切換效果,這里的Vue以單文件的形式引入,另外代碼在實(shí)現(xiàn)上會(huì)一步步的進(jìn)行優(yōu)化。需要的朋友可以參考下
    2018-04-04
  • 前端vue3中的ref與reactive用法及區(qū)別總結(jié)

    前端vue3中的ref與reactive用法及區(qū)別總結(jié)

    這篇文章主要給大家介紹了關(guān)于前端vue3中的ref與reactive用法及區(qū)別的相關(guān)資料,關(guān)于ref及reactive的用法,還是要在開發(fā)中多多使用,遇到響應(yīng)式失效問(wèn)題,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-08-08
  • 解決vue 中 echart 在子組件中只顯示一次的問(wèn)題

    解決vue 中 echart 在子組件中只顯示一次的問(wèn)題

    vue推薦組件化開發(fā),所以就把每個(gè)圖表封裝成子組件,然后在需要用到該圖表的父組件中直接使用。接下來(lái)給大家介紹vue 中 echart 在子組件中只顯示一次的問(wèn)題,需要的朋友參考下吧
    2018-08-08
  • vue $nextTick實(shí)現(xiàn)原理深入詳解

    vue $nextTick實(shí)現(xiàn)原理深入詳解

    這篇文章主要介紹了vue $nextTick實(shí)現(xiàn)原理深入詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • 手把手教你搭建vue3.0項(xiàng)目架構(gòu)

    手把手教你搭建vue3.0項(xiàng)目架構(gòu)

    這篇文章手把手教你搭建vue3.0項(xiàng)目架構(gòu),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2021-11-11
  • vue props 單項(xiàng)數(shù)據(jù)流實(shí)例分享

    vue props 單項(xiàng)數(shù)據(jù)流實(shí)例分享

    在本篇文章里小編給大家分享的是一篇關(guān)于vue props 單項(xiàng)數(shù)據(jù)流實(shí)例分享內(nèi)容,需要的朋友們可以參考下。
    2020-02-02
  • vue中環(huán)境變量的使用與配置講解

    vue中環(huán)境變量的使用與配置講解

    這篇文章主要介紹了vue中環(huán)境變量的使用與配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Vue如何為GET或POST請(qǐng)求設(shè)置請(qǐng)求頭

    Vue如何為GET或POST請(qǐng)求設(shè)置請(qǐng)求頭

    這篇文章主要介紹了Vue如何為GET或POST請(qǐng)求設(shè)置請(qǐng)求頭,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04

最新評(píng)論