最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Vue.directive 自定義指令

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

一、什么是全局API?

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

二、Vue.directive自定義指令

我們在第一季就學(xué)習(xí)了內(nèi)部指令,我們也可以定義一些屬于自己的指令,比如我們要定義一個v-jspang的指令,作用就是讓文字變成綠色。

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

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

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

binding:  一個對象,包含指令的很多信息。

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

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

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

  1. bind:只調(diào)用一次,指令第一次綁定到元素時調(diào)用,用這個鉤子函數(shù)可以定義一個綁定時執(zhí)行一次的初始化動作。
  2. inserted:被綁定元素插入父節(jié)點時調(diào)用(父節(jié)點存在即可調(diào)用,不必存在于document中)。
  3. update:被綁定于元素所在的模板更新時調(diào)用,而無論綁定值是否變化。通過比較更新前后的綁定值,可以忽略不必要的模板更新。
  4. componentUpdated:被綁定元素所在模板完成一次更新周期時調(diào)用。
  5. unbind:只調(diào)用一次,指令與元素解綁時調(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é)點
        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é)點
   console.log('2 - inserted');
},
update:function(){//組件更新
   console.log('3 - update');
},
componentUpdated:function(){//組件更新完成
   console.log('4 - componentUpdated');
},
unbind:function(){//解綁
   console.log('1 - bind');
}

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

相關(guān)文章

  • Vue使用 onMounted 確保在組件掛載后執(zhí)行異步操作示例詳解

    Vue使用 onMounted 確保在組件掛載后執(zhí)行異步操作示例詳解

    在 Vue.js 或其他類似框架中,使用 onMounted 是為了確保在組件掛載后執(zhí)行異步操作,這篇文章主要介紹了Vue使用onMounted確保在組件掛載后執(zhí)行異步操作,需要的朋友可以參考下
    2023-06-06
  • 使用Vite+Vue3+TypeScript?搭建開發(fā)腳手架的詳細過程

    使用Vite+Vue3+TypeScript?搭建開發(fā)腳手架的詳細過程

    這篇文章主要介紹了Vite+Vue3+TypeScript?搭建開發(fā)腳手架的詳細過程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-02-02
  • vue?axios接口請求封裝方式

    vue?axios接口請求封裝方式

    這篇文章主要介紹了vue?axios接口請求封裝方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Vue 使用 Mint UI 實現(xiàn)左滑刪除效果CellSwipe

    Vue 使用 Mint UI 實現(xiàn)左滑刪除效果CellSwipe

    這篇文章主要介紹了Vue 使用 Mint UI 實現(xiàn)左滑刪除效果CellSwipe,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2018-04-04
  • 淺談VUE uni-app 核心知識

    淺談VUE uni-app 核心知識

    這篇文章主要給大家介紹了關(guān)于uniapp的核心知識,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-10-10
  • Vue實現(xiàn)二維碼數(shù)組的全選與反選功能

    Vue實現(xiàn)二維碼數(shù)組的全選與反選功能

    在開發(fā)Web應(yīng)用程序時,表格數(shù)據(jù)的展示和操作是非常常見的需求之一,特別是在處理表格中的復(fù)選框選擇時,我們經(jīng)常需要實現(xiàn)全選、反選等功能,這篇文章將帶你深入了解如何在Vue.js中實現(xiàn)對二維數(shù)組數(shù)據(jù)的全選和反選功能,需要的朋友可以參考下
    2024-09-09
  • vue.js自定義組件實現(xiàn)v-model雙向數(shù)據(jù)綁定的示例代碼

    vue.js自定義組件實現(xiàn)v-model雙向數(shù)據(jù)綁定的示例代碼

    這篇文章主要介紹了vue.js自定義組件實現(xiàn)v-model雙向數(shù)據(jù)綁定的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • vue3.0中使用Element-Plus中Select下的filter-method屬性代碼示例

    vue3.0中使用Element-Plus中Select下的filter-method屬性代碼示例

    這篇文章主要給大家介紹了關(guān)于vue3.0中使用Element-Plus中Select下的filter-method屬性的相關(guān)資料,Filter-method用法是指從一組數(shù)據(jù)中選擇滿足條件的項,文中通過圖文以及代碼介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • Vue?2源碼閱讀?Provide?Inject?依賴注入詳解

    Vue?2源碼閱讀?Provide?Inject?依賴注入詳解

    這篇文章主要為大家介紹了Vue?2源碼閱讀?Provide?Inject?依賴注入詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • vue?css?相對路徑導(dǎo)入問題級踩坑記錄

    vue?css?相對路徑導(dǎo)入問題級踩坑記錄

    這篇文章主要介紹了vue?css?相對路徑導(dǎo)入問題級踩坑記錄,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評論

封开县| 呼和浩特市| 醴陵市| 泽库县| 二连浩特市| 化德县| 湟源县| 图片| 绥江县| 山阳县| 万宁市| 抚松县| 弥渡县| 沅陵县| 洪雅县| 高青县| 邳州市| 屏东市| 辉南县| 同心县| 巫溪县| 称多县| 营山县| 维西| 民勤县| 乐亭县| 额济纳旗| 吉水县| 普格县| 临武县| 札达县| 磐安县| 留坝县| 长沙县| 乐清市| 时尚| 百色市| 浮山县| 土默特右旗| 广宁县| 昆明市|