Vue【四】vue自定义指令。

2023-11-15

Vue【四】vue自定义指令


前言

除了核心功能默认内置的指令 (v-modelv-show),Vue 也允许注册自定义指令。 v-xxx

注意,代码复用和抽象的主要形式是组件。

然而,有的情况下,仍然需要对普通 DOM 元素进行底层操作,这时候就会用到自定义指令。


一、自定义指令——局部注册

例如需求: 当页面加载时,让元素将获得焦点 , (autofocus 在 safari 浏览器有兼容性)。

<template>
  <div>
    <h3>自定义指令</h3>
    <input ref="inp" type="text" v-focus>
  </div>
</template>

<script>
export default {
  directives: {
    // 自定义一个局部指令——focus
    //focus: {
    //  inserted (el) {
    //    el.focus()
    //  }
    //}
    //也可以简写下面格式
    focus(el){
    	 el.focus()
  	}
}
</script>

二、自定义指令——全局注册

main.js中进行全局注册,如下:

Vue.directive('focus', {
  inserted (el) {
    el.focus()
  }
})

上述代码也可以简写为:

Vue.directive('focus', (el)=>{
	el.focus()
})

三、自定义指令——指令的值

在绑定指令时,可以通过“等号”的形式为指令绑定具体的参数值。

需求: v-color=“color” 给对应的颜色, 就能改对应的字体颜色。
这里介绍自定义指令完整写法用到两种方法:

函数 函数作用
inserted 指令所在的元素渲染的时候执行
update 在值改变时触发
<div v-color="color">我是内容</div>

实现:

directives: {
  // 自定义一个局部指令
  color: {
    // 指令所在的元素渲染的时候,{value}用到了对象解构
    inserted (el, {value}) {
      el.style.color = value
    },
    // update指令的值改变时触发, binding.value指令的值修改触发
    update (el, binding) {
      el.style.color = binding.value
    }
  }
}
==inserted里面的value写法也可以写成binding这种形式==

总结

本文主要讲了vue基础语法中的自定义指令,在vue的学习中很少封装自定义指令。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue【四】vue自定义指令。 的相关文章

随机推荐

  • Flink---1、概述、快速上手

    1 Flink概述 1 1 Flink是什么 Flink的官网主页地址 https flink apache org Flink的核心目标是 数据流上有状态的计算 Stateful Computations over Data Stream
  • OpenHarmony之Ubuntu22.04执行hb set报错

    错误提示 最近在使用Ubuntu22 04搭建OpenHarmony编译环境 在执行hb set命令选择开发板时出现如下报错 详细log如下 fangye fangye virtual machine niobeu4 src hb set
  • 分了很多节的word文档,使用尾注插入的参考文献,最后怎么在参考文献之后加入致谢?

    转自 点击打开链接 需要设置一下 1 设置尾注的位置 引用 脚注 按这个功能区分组右下角的功能展开按钮 调出 脚注和尾注 设置对话框 在 位置 下 尾注 后选择 节的结尾 2 从第一节开始分别取消各节的 尾注 直到 参考文献 这节 页面布局
  • 在Docker容器中部署整套基于Spring Cloud的微服务架构,看这篇就对了!

    本文以mall swarm项目为例 主要介绍一个微服务架构的电商项目如何在Docker容器下部署 涉及到大量系统组件的部署及多个Spring Cloud 微服务应用的部署 基于CentOS7 6 环境搭建 基础环境部署 mall swarm
  • vue 写的登录页面

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 登录页面 二 使用步骤 1 引入库 前言 提示 以下是本篇文章正文内容 下面案例可供参考 一 登录页面 1 用element ui或者用iView组件都可
  • Denoising Diffusion Probabilistic Models简介

    目录 概要 前向过程 nice property 逆向过程 参数推导 简化 渐进式编码 Progressive coding 参考资料 概要 Denoising Diffusion Probabilistic Model DDPM 是一个生
  • echarts 部分含义

    xAxis xAxis show true 是否显示x轴 position top x轴的位置 top bottom type category 坐标轴类型 value category time log name 姓名 坐标轴名称 nam
  • C++ opencv 将图片分为任意N等分,并保存所有子图片于本地

    C opencv 将图片分为任意N等分 并保存所有子图片于本地 第一次写博客 格式不对之处 请原谅 include
  • Java 项目的跨库的方式查询的方法

    Java 项目的跨库的方式查询的方法 目录 概述 需求 设计思路 实现思路分析 性能参数测试 参考资料和推荐阅读 Survive by day and develop by night talk for import biz show yo
  • 藏经阁(九)触摸屏驱动芯片XPT2046 解析

    文章目录 一 前言 二 XPT2046的介绍 1 先看其内部框图 2 引脚图和应用原理图 3 参考电压 4 通信时序 一 前言 XPT2046可以作为12位的4通道输入的ADC来使用 也可以作为4线电阻触摸屏的驱动芯片来使用 下面介绍作为触
  • 图像识别-YOLO V8安装部署-window-CPU-Pycharm

    前言 安装过程中发现 YOLO V8一直在更新 现在是2023 9 20的版本 已经和1月份刚发布的不一样了 eg 目录已经变了 旧版预测 在ultralytics yolo v8 下detect 新版 ultralytics models
  • 目前国内电子地图产业链

    目前国内电子地图产业链 从最上游开始依次共有数据类 软件类 互联网及移动互联网服务类3大环节 细分4大链条 转播到腾讯微博 其中 第一环节和第三个环节 都需要牌照 第一环节中的地图数据采集商 如高德 四维获得行业甲级牌照后 方能具备从事采集
  • markdown自动生成导航目录

    把这一段代码插入到markdown生成的HTML文件的head标签中 将会自动根据markdown的标题按级别生成导航目录
  • 可能是Windows下最简单的Java环境安装指南

    1 简介 JDK Java SE Development Kit Java开发工具 JRE Java Runtime Environment Java运行环境 如果要从事Java编程 则需要安装JDK 如果仅仅是运行一款Java程序则JRE
  • Keycloak配置模拟用户登录

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 一 keycloak配置 一 keycloak配置 keycloak启动 winodws通过配置项启动keycloak 进入keycloak安装目录keycloak
  • 基于Qt的OpenGL编程(3.x以上GLSL可编程管线版)---(二十四)高级GLSL技巧

    Vries的教程是我看过的最好的可编程管线OpenGL教程 没有之一 其原地址如下 https learnopengl cn github io 04 20Advanced 20OpenGL 08 20Advanced 20GLSL 关于高
  • OLED\OLED.axf: Error: L6200E: Symbol __asm___6_oled_c_F16x16____REV16 multiply defined (by oled_1.o

    关于这个问题的解决我当时找了很久不知道该如何解决它总说重复最后发现应该是当时在别的文件夹引入的时候重复了 选择Remove Group然后重新编译 就ok了
  • 迁移学习(transfer learning)和微调(fine-tune)的几点认识

    迁移学习和微调的区别 什么是迁移学习 即一种学习对另一种学习的影响 它广泛地存在于知识 技能 态度和行为规范的学习中 任何一种学习都要受到学习者已有知识经验 技能 态度等的影响 只要有学习 就有迁移 迁移是学习的继续和巩固 又是提高和深化学
  • java实现多图片或多图片上传

    文章目录 一 单图上传 步骤 前台页面 后台实现文件上传的操作 二 多图上传 多图上传 还需要多一些步骤 适用功能 一 单图上传 步骤 前台页面 1 文件样式世界 div class layui input block img src al
  • Vue【四】vue自定义指令。

    Vue 四 vue自定义指令 文章目录 Vue 四 vue自定义指令 TOC 文章目录 前言 一 自定义指令 局部注册 二 自定义指令 全局注册 三 自定义指令 指令的值 总结 前言 除了核心功能默认内置的指令 v model 和 v sh