Vue(10)——自定义指令

自定义指令

自定义指令:可以封装一些dom操作,扩展额外功能。

全局注册-语法:

Vue.directive('指令名',{

"inserted"(el){ inserted指指令所绑定的元素被添加到页面时自动调用

//可以对el标签扩展额外功能

el.focus()

}

})

局部注册-语法:

directives:{

"指令名":{

inserted(){

el.focus()

}

}

}

使用时v-指令名 。


全局注册示例:

局部注册示例:

自定义指令的值

语法:在绑定指令时,可以通过"等号"的形式为指令绑定的具体数值。

<div v-color="color">我是内容</div>

通过binding.value可以拿到指令值指令值修改会触发update函数

directives:{

color:{

inserted(el,binding){

el.style.color = binding.value

},

update(el,binding){

el.style.color = binding.value

}

}

}

<template>
  <div>
    <h1 v-color="color1">自定义指令</h1>
    <h1 v-color="color2">自定义指令</h1>
  </div>
</template>

<script>
export default{
  directives:{
    color:{
      inserted(el,binding){
        el.style.color = binding.value
      },
      update(el,binding){
        el.style.color = binding.value
      }
    }
  },
  data(){
    return{
      color1:'red',
      color2:'blue'
    }
  }
}
</script>
相关推荐
计算机学姐20 分钟前
基于SpringBoot+Vue的篮球馆会员信息管理系统
java·vue.js·spring boot·后端·mysql·spring·mybatis
小白小白从不日白26 分钟前
react 高阶组件
前端·javascript·react.js
程序员大金32 分钟前
基于SpringBoot+Vue+MySQL的智能物流管理系统
java·javascript·vue.js·spring boot·后端·mysql·mybatis
Mingyueyixi1 小时前
Flutter Spacer引发的The ParentDataWidget Expanded(flex: 1) 惨案
前端·flutter
徐同保1 小时前
vue 在线预览word和excel
vue.js·word·excel
Rverdoser2 小时前
unocss 一直热更新打印[vite] hot updated: /__uno.css
前端·css
Bang邦2 小时前
使用nvm管理Node.js多版本
前端·node.js·node多版本管理
podoor2 小时前
wordpress不同网站 调用同一数据表
前端·wordpress
LJ小番茄2 小时前
Vue 常见的几种通信方式(总结)
前端·javascript·vue.js·html