vue3.0如何快速封装自定义指令!

一、输入框自动获得焦点

javascript 复制代码
// 定义自定义指令 v-focus
const vFocus = {
  // 当被绑定的元素插入到 DOM 中时......
  mounted(el) {
    // 聚焦元素
    el.focus();
  }
};

全局注册指令
app.directive('focus', vFocus);

使用:

html 复制代码
<input v-focus />

二、只能输入数字

javascript 复制代码
const vOnlyNumber = {
  mounted(el) {
    // 当元素挂载时设置事件监听器
    el.addEventListener('input', (event) => {
      // 使用正则表达式只允许数字通过
      event.target.value = event.target.value.replace(/[^\d]/g, '');
    });
  },
  // 如果需要处理组件更新后的情况,可以添加 updated 钩子
  updated(el) {
    el.addEventListener('input', (event) => {
      event.target.value = event.target.value.replace(/[^\d]/g, '');
    });
  }
};

// 全局注册指令
app.directive('only-number', vOnlyNumber);

使用:

html 复制代码
<input v-only-number type="text" />

最近发现一个比较好用的vue+node后台管理系统,vue2+vue3

菜单管理、权限管理 、角色管理、主题管理、字典管理、文件管理等等......

如果你正在学习和了解node和vue结合,不妨看看它:node-vue后台系统源码
相关推荐
天蓝色的鱼鱼7 分钟前
从“死了么”到“我在”:用uniCloud开发一款温暖人心的App
前端·uni-app
小徐_233311 分钟前
uni-app 组件库 Wot UI 的 AI 友好型编程指南
前端·uni-app
HelloReader13 分钟前
Flutter Widget 基础手把手教你创建自定义组件(二)
前端
Hilaku17 分钟前
在 HTTP/3 普及的 2026 年,那些基于 Webpack 的性能优化经验,有一半该扔了
前端·javascript·面试
前端付豪20 分钟前
AI 数学辅导老师项目构想和初始化
前端·后端·python
HelloReader21 分钟前
从零创建你的第一个 Flutter 应用(一)
前端
程序员阿峰21 分钟前
别再写JS监听滚动了!一行CSS搞定导航固定+通讯录效果(附3个案例)
前端
进击的尘埃22 分钟前
基于 LLM Function Calling 的前端动态表单生成引擎:从 JSON Schema 映射到运行时组件树的端到端实现
javascript
wordbaby24 分钟前
前端进阶:小程序 Canvas 2D 终极指北 — 给图片优雅添加水印
前端·canvas
树上有只程序猿27 分钟前
OpenClaw虽香,但不是人人都养得起“小龙虾
前端·openai