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后台系统源码
相关推荐
只与明月听3 分钟前
一次uniapp问题排查
前端·javascript·vue.js
Bacon4 分钟前
Vitest 一个基于 Vite 的快速单元测试框架
前端
学不动学不明白7 分钟前
AES-GCM 解密失败解决方案
前端
一水鉴天9 分钟前
整体设计 定稿 之16 三层智能合约体系实现设计和开发的实时融合
前端·人工智能·架构·智能合约
小菜今天没吃饱21 分钟前
DVWA-XSS(Reflected)
前端·xss·dvwa
孟祥_成都24 分钟前
前端下午茶!看看炫酷的动画,轻松一下!
前端·动效
lxh011330 分钟前
合并K个升序链表题解
前端·数据结构·链表
小周码代码37 分钟前
js 数字金额转为大写 js 金额转大写
开发语言·前端·javascript·js工具
航Hang*40 分钟前
WEBSTORM前端——第1章:HTML——第2节:列表,表格,下拉菜单,文本框与按钮
前端·html·css3·webstorm
云计算DevOps-韩老师42 分钟前
HTML盒子模型详解
前端·html