【VUE】Vue2中的自定义指令

在 Vue2 中,我们可以使用 Vue.directive 函数来定义自定义指令。自定义指令用于对 DOM 操作的封装和复用。

在 Vue2 中,自定义指令的生命周期钩子函数的功能分别如下:

  • bind: 只调用一次,在指令第一次绑定到元素时调用,用于进行一次性的初始化设置。
  • inserted: 被绑定元素插入父节点时调用,用于进行 DOM 操作。
  • update: 被绑定元素所在的模板更新时调用,而无论绑定值是否变化,以及何时发生变化都会调用。
  • componentUpdated: 被绑定元素所在模板完成一个周期的更新时调用,只要组件数据变化,就会调用。
  • unbind: 只调用一次,在指令解绑时调用,用于清除所有的绑定指令。

常用的自定义指令场景:

  1. v-focus:实现页面加载后自动聚焦到某个表单元素上。
  2. v-limit:限制表单输入框的输入长度,对于超出长度的字符提供错误提示。
  3. v-ellipsis:处理文本溢出的情况,通过省略号的形式显示文本,当用户鼠标悬停在省略号上时显示完整文本内容。
  4. v-scroll:在页面需要滚动操作时,当滚动到特定位置或高度时,显示浮动操作按钮或菜单进行快捷操作。
  5. v-drag:实现拖拽功能,当用户在指定的区域按下鼠标时,可以移动元素到指定的位置。
  6. v-lazy-img:图片懒加载,当图片未出现在用户可视区域内时,不进行请求和加载,当图片出现在用户可视区域内时,进行请求和加载。
  7. v-toggle:实现开关切换功能,当用户点击开关时,改变指定元素的显示状态。
  8. v-tooltip:鼠标悬停在某个元素上时,显示 tooltip 或 popover 提示框。
相关推荐
星栈1 天前
10 分钟跑起第一个 Dioxus 应用:`dx` CLI、`rsx!` 和热更新好不好用
前端·rust·前端框架
奋斗吧程序媛1 天前
补充一个小知识点:有关@click.native
前端·vue.js
英勇无比的消炎药1 天前
一行命令背后:TinyRobot CLI 如何重构 AI 对话接入的效率范式
vue.js·aigc
触底反弹1 天前
🚀 手把手用 HTML5 Canvas 从零打造飞机大战游戏,代码全开源!
前端·javascript·canvas
DJ斯特拉1 天前
axios快速使用
开发语言·前端·javascript
智通1 天前
可取消的异步任务与 AbortController
javascript
还有多久拿退休金1 天前
Ant Design Tree 搜索定位避坑指南:虚拟滚动下如何实现高亮与精准定位
前端·react.js
小月土星1 天前
CSS 3D 从入门到炫技:手把手教你写一个旋转立方体
前端·css
Hilaku1 天前
AI 写代码越快,为什么 Code Review 越不能省?
前端·javascript·程序员
sugar__salt1 天前
从网页小游戏到数据可视化:掌握 HTML5 Canvas 核心能力
前端·信息可视化·html5