vue自定义指令

1. 概述

Vue.js 提供了自定义指令(Directives)的特性,允许开发者自定义 HTML 标签的行为。自定义指令是 Vue 的一种高级特性,它使你可以扩展 HTML 标签的行为。通过自定义指令,你可以添加、修改或删除元素的某些行为。

vue存在许多的内置指令:如:v-html、v-model、v-for 等等。

那么如何进行自定义指令呢?详见后面

2. 自定义指令

你可以在全局范围内或组件内部注册自定义指令。

全局注册的指令会影响到该 Vue 实例下的所有组件,而局部注册的指令只影响特定的组件。

2.1 全局注册

在main.js 中进行注册

语法如下:

js 复制代码
// 全局注册  
Vue.directive('指令名', {  
  inserted (el, binding) {  
    // 指令的逻辑  
    el.focus()
  },
  update (el, binding) {
    // 当绑定的值改变时更新预览 div(双向绑定)  
  },  
})  
  • el: 目标元素,你可以在其上直接操作 DOM。
  • binding : 一个对象,用于接收绑定,需要处理的数据,详见后续讲解

2.2 局部注册

在对应组件中进行注册

语法如下:

js 复制代码
// 组件内注册  
export default {
  
  // 局部注册
  directives: {  
    '指令名': {  
     inserted (el, binding) {  
          // 指令的逻辑  
          el.focus()
      },
      update (el, binding) {
    		// 当绑定的值改变时更新预览 div(双向绑定)  
 		 },  
    }  
  }  
  
}
  • el: 目标元素,你可以在其上直接操作 DOM。
  • binding : 一个对象,用于接收绑定,需要处理的数据,详见后续讲解

3. 自定义组件的使用

如下:案例

js 复制代码
<input v-指令名 type="text">
相关推荐
sugar__salt20 分钟前
Vue3 表单双向绑定与响应式核心 API 技术详解
前端·javascript·vue.js
郝亚军34 分钟前
使用Vue 3和Nginx打包和部署Vue.js项目的一般步骤
前端·vue.js·nginx
SmartBoyW38 分钟前
CSS弹性布局(Flexbox)学习笔记:从零开始搞懂弹性布局
前端·javascript
用户693717500138441 分钟前
从代码生产者到 AI 协作者:软件工程师的角色重构
android·前端·后端
嘟嘟071742 分钟前
搞懂 useState 从原生 DOM 到 React 惰性初始化的完整链路
前端·react.js·编程语言
牧艺43 分钟前
cos-design RippleWater & SmokeFog:水面涟漪与烟雾雾气怎么做
前端·canvas·视觉设计
用户938515635071 小时前
写了这么久 useState,你真的知道它在干什么吗?
前端·javascript
慢功夫1 小时前
💡第七篇:VSCode语言服务中,代码跳转和诊断是怎么做的?
前端·visual studio code
Csvn1 小时前
✨ TypeScript `satisfies` 操作符实战——5 个让代码更「聪明」的生产场景
前端
Healer9181 小时前
vue3页面缓存-keepAlive
前端