当前位置: 首页 > news >正文

描述下Vue自定义指令

描述下Vue自定义指令

  • (1)自定义指令基本内容
  • (2)使用场景
  • (3)使用案例

在 Vue2.0 中,代码复用和抽象的主要形式是组件。然而,有的情况下,你仍然需要对普通 DOM 元素进行底层操作,这时候就会用到自定义指令。
一般需要对DOM元素进行底层操作时使用,尽量只用来操作 DOM展示,不修改内部的值。当使用自定义指令直接修改 value 值时绑定v-model的值也不会同步更新;如必须修改可以在自定义指令中使用keydown事件,在vue组件中使用 change事件,回调中修改vue数据;

(1)自定义指令基本内容

全局定义:Vue.directive(“focus”,{})
局部定义:directives:{focus:{}}
钩子函数:指令定义对象提供钩子函数
bind:只调用一次,指令第一次绑定到元素时调用。在这里可以进行一次性的初始化设置。
inSerted:被绑定元素插入父节点时调用(仅保证父节点存在,但不一定已被插入文档中)。
update:所在组件的VNode更新时调用,但是可能发生在其子VNode更新之前调用。指令的值可能发生了改变,也可能没有。但是可以通过比较更新前后的值来忽略不必要的模板更新。
ComponentUpdate:指令所在组件的 VNode及其子VNode全部更新后调用。
unbind:只调用一次,指令与元素解绑时调用。

钩子函数参数
el:绑定元素
bing: 指令核心对象,描述指令全部信息属性
name
value
oldValue
expression
arg
modifers
vnode 虚拟节点
oldVnode:上一个虚拟节点(更新钩子函数中才有用)

(2)使用场景

普通DOM元素进行底层操作的时候,可以使用自定义指令
自定义指令是用来操作DOM的。尽管Vue推崇数据驱动视图的理念,但并非所有情况都适合数据驱动。自定义指令就是一种有效的补充和扩展,不仅可用于定义任何的DOM操作,并且是可复用的。

(3)使用案例

初级应用:
鼠标聚焦
下拉菜单
相对时间转换
滚动动画
高级应用:
自定义指令实现图片懒加载
自定义指令集成第三方插件

http://www.lryc.cn/news/312923.html

相关文章:

  • 2024.3.7
  • this.$watch 侦听器 和 停止侦听器
  • P1030 [NOIP2001 普及组] 求先序排列题解
  • 【分布式】NCCL Split Tree kernel内实现情况 - 06
  • C语言深入学习 --- 4.自定义类型(结构体+枚举+联合)
  • AI自然语言中默认上下文长度4K 几K是什么意思?
  • vSphere 8考试认证题库 2024最新(VCP 8.0版本)
  • 系统学习Python——装饰器:“私有“和“公有“属性案例-[装饰器参数、状态保持和外层作用域]
  • 星辰天合参与编制 国内首个可兼顾 AI 大模型训练的高性能计算存储标准正式发布
  • 算法训练day38动态规划基础Leetcode509斐波纳切数70爬楼梯746使用最小花费爬楼梯
  • Leetcode 206. 反转链表
  • 电子科技大学课程《计算机网络系统》(持续更新)
  • HBase介绍、特点、应用场景、生态圈
  • 蓝桥杯错误记录
  • Spring-静态代理VS动态代理/实现代理ProxyFactory
  • 单片机精进之路-9ds18b20温度传感器
  • 支部管理系统微信小程序(管理端+用户端)flask+vue+mysql+微信小程序
  • 4、Linux-常用命令(二)
  • golang实现openssl自签名双向认证
  • 【学习】torchvision.datasets.ImageFolder()
  • pyinstaller打包的exe运行报错 No module named path
  • Vue3中Vuex状态管理库学习笔记
  • React富文本编辑器开发(二)
  • nginx代理minio客户端
  • 将ppt里的视频导出来
  • Spring Boot 3核心技术与最佳实践
  • redis缓存更新策略
  • 【操作系统学习笔记】文件管理1.4
  • 快递包装展|2024上海国际电商物流包装产业展览会
  • vue页面刷新问题:返回之前打开的页面,走了create方法(解决)