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

vue.js內(nèi)部自定義指令與全局自定義指令的實現(xiàn)詳解(利用directive)

 更新時間:2017年07月11日 09:06:46   作者:前端交流ing  
這篇文章主要給大家介紹了關(guān)于vue.js內(nèi)部自定義指令與全局自定義指令的實現(xiàn)方法,vue.js中實現(xiàn)自定義指令的主要是利用directive,directive這個單詞是我們寫自定義指令的關(guān)鍵字,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

大家都知道在Vue中,我們平時數(shù)據(jù)驅(qū)動視圖時候,內(nèi)部自帶的指令有時候解決不了一些需求,這時候,Vue給我們一個很好用的東東來實現(xiàn)自定義指令,這就是directive。下面話不多說了,來一起看看詳細(xì)的介紹:

directive

這個單詞是我們寫自定義指令的關(guān)鍵字哦

自定義指令為我們提供了幾個鉤子函數(shù),這時候你一定好奇什么是鉤子函數(shù),說簡單點,就是集中表現(xiàn)狀態(tài)

  • bind: 只調(diào)用一次,指令第一次綁定到元素時調(diào)用,用這個鉤子函數(shù)可以定義一個在綁定時執(zhí)行一次的初始化動作。
  • inserted: 被綁定元素插入父節(jié)點時調(diào)用(父節(jié)點存在即可調(diào)用,不必存在于 document 中)。
  • update: 被綁定元素所在的模板更新時調(diào)用,而不論綁定值是否變化。通過比較更新前后的綁定值,可以忽略不必要的模板更新(詳細(xì)的鉤子函數(shù)參數(shù)見下)。
  • componentUpdated: 被綁定元素所在模板完成一次更新周期時調(diào)用。
  • unbind: 只調(diào)用一次, 指令與元素解綁時調(diào)用。

下面我們開始上代碼,讓我們更好的理解自定義指令怎么做

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 <script src="https://unpkg.com/vue/dist/vue.js"></script>
</head>
<body>
 <div id="app">
 
 <div class="ab" v-css="{'color':'red','font-size':'30px'}">
 hello
 </div>
 <input type="text" v-focus>
 </div>
 
</body>
</html>

在html中,我們看到了兩個指令v-cssv-focus

我們自定義指令時候,一定前面要帶上v-

Vue.directive("css",{
 //鉤子函數(shù) ,el就是當(dāng)前元素
 inserted(el,binding){
 //el綁定的元素本身
 //binding就是css指令里面的的對象元素
 let styleobj=binding.value,arr=[];
 for(let key in styleobj){
  arr.push(key+":"+styleobj[key])
  }
 arr=arr.join(";");
 el.style.cssText=arr;
 },
 bind(el,binding) {
 //指令綁定在元素上時候執(zhí)行,只執(zhí)行一次
 }
});
 new Vue({
   el:'#app',
 data:{
  show:true
 },
 directives:{
 focus:{
  inserted(el,binding){
  //el綁定的元素本身
  //binding就是css指令里面的的對象元素
  el.focus();
  }
  }
 }
 });

在js里面我們可以看到

Vue.directive("css",{})

我們在 new Vue外部定義了這樣一段代碼,這就是我們?nèi)肿远x指令的模板方式

  • css是自定義指令的名字
  • {}里面我們寫上鉤子函數(shù)就可以

我們所有的鉤子函數(shù)里面,基本都會有2個參數(shù)el,binding

  • el: 指令所綁定的元素,可以用來直接操作 DOM 。
  • binding 綁定元素本身的一個對象

從上面我們可以看到,binding里面保留綁定指令的name和value,這些很重要

局部自定義指令

directives:{
 name:{

 }
 }

區(qū)別在于,我們寫在new Vue里面,里面api操作和上面的全局自定義指令一樣

下面我們開始看代碼運行結(jié)果

我們可以看到樣式引用上去了

文本框也獲取了焦點

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • vue項目優(yōu)化之通過keep-alive數(shù)據(jù)緩存的方法

    vue項目優(yōu)化之通過keep-alive數(shù)據(jù)緩存的方法

    本篇文章主要介紹了vue項目優(yōu)化之通過keep-alive數(shù)據(jù)緩存的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • 深入理解Vuex的作用

    深入理解Vuex的作用

    這篇文章主要介紹了深入理解Vuex的作用,對Vuex感興趣的同學(xué),可以參考下
    2021-05-05
  • Vue數(shù)據(jù)監(jiān)聽方法watch的使用

    Vue數(shù)據(jù)監(jiān)聽方法watch的使用

    這篇文章主要介紹了Vue數(shù)據(jù)監(jiān)聽方法watch的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • vue自定義指令實現(xiàn)元素滑動移動端適配及邊界處理

    vue自定義指令實現(xiàn)元素滑動移動端適配及邊界處理

    這篇文章主要為大家介紹了vue自定義指令實現(xiàn)元素滑動移動端適配及邊界處理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • 基于Vue2實現(xiàn)印章徽章組件

    基于Vue2實現(xiàn)印章徽章組件

    這篇文章主要介紹了如何基于vue2實現(xiàn)簡單的印章徽章控件,文中通過示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價值,需要的朋友們下面就跟隨小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-10-10
  • Vue數(shù)據(jù)綁定簡析小結(jié)

    Vue數(shù)據(jù)綁定簡析小結(jié)

    這篇文章主要介紹了Vue數(shù)據(jù)綁定簡析小結(jié),本文將從源碼的角度來對Vue響應(yīng)式數(shù)據(jù)中的觀察者模式進(jìn)行簡析。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • vue?element-ui動態(tài)橫向統(tǒng)計表格的實現(xiàn)

    vue?element-ui動態(tài)橫向統(tǒng)計表格的實現(xiàn)

    這篇文章主要介紹了vue?element-ui動態(tài)橫向統(tǒng)計表格的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue2.0使用swiper組件實現(xiàn)輪播的示例代碼

    vue2.0使用swiper組件實現(xiàn)輪播的示例代碼

    下面小編就為大家分享一篇vue2.0使用swiper組件實現(xiàn)輪播的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • Vue組件間的樣式?jīng)_突污染問題詳解

    Vue組件間的樣式?jīng)_突污染問題詳解

    默認(rèn)情況下,寫在.vue組件中的樣式會全局生效,因此很容易造成多個組件之間的樣式?jīng)_突問題。導(dǎo)致組件之間樣式?jīng)_突的根本原因,我們接下來探究一下
    2022-11-11
  • 詳解如何在nuxt中添加proxyTable代理

    詳解如何在nuxt中添加proxyTable代理

    這篇文章主要介紹了詳解如何在nuxt中添加proxyTable代理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08

最新評論

工布江达县| 平泉县| 海口市| 若羌县| 广河县| 宜阳县| 仁怀市| 任丘市| 柞水县| 宜君县| 无锡市| 巴彦淖尔市| 万载县| 宝清县| 墨竹工卡县| 冷水江市| 廊坊市| 新巴尔虎右旗| 怀远县| 菏泽市| 安岳县| 白城市| 南木林县| 海宁市| 礼泉县| 莱州市| 涪陵区| 眉山市| 乐都县| 柳江县| 湟中县| 南宫市| 小金县| 珠海市| 海丰县| 射洪县| 建水县| 远安县| 林州市| 扬州市| 大化|