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后台系统源码
相关推荐
默_笙12 分钟前
🌃 HTTP 不认识你:JWT 登录鉴权的完整"酒店入住"指南
前端·javascript
Profile排查笔记30 分钟前
JavaScript 实现浏览器指纹生成:基础字段、Canvas 采样与 SHA-256 摘要
前端·人工智能·后端·自动化
不可能片场31 分钟前
Electron 子进程退化成 node 的 env 陷阱
前端·electron
奋斗吧程序媛33 分钟前
CSV文件导入功能
开发语言·javascript·ecmascript
搬砖记录员35 分钟前
录屏总黑屏?90% 的人没关这个开关——浏览器硬件加速冲突排查指南
前端·音视频开发
promiseThen39 分钟前
我用 7 条铁律管住 Cursor:让 AI 写代码不再「自由发挥」
前端·ai编程
天道kabuto1 小时前
vue-i18n 升级 9.x 踩坑:正则表达式引发的“花括号”惨案
vue.js
梨想橙汁1 小时前
JS 核心语法:运算符流程控制、函数、数组与对象实战详解
前端·javascript
七牛开发者1 小时前
拆解 dsh:Turn 与 Step 如何组织 Agent 主循环
前端·javascript·人工智能
空想兔1 小时前
前端网络请求的前世今生:从 Ajax、XHR 到 Fetch 和 Axios
javascript