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后台系统源码
相关推荐
爱健身的小刘同学13 分钟前
Vue 3 + Leaflet 地图可视化
前端·javascript·vue.js
神秘的猪头26 分钟前
Ajax 数据请求:从零开始掌握异步通信
前端·javascript
黛色正浓34 分钟前
leetCode-热题100-贪心合集(JavaScript)
javascript·算法·leetcode
稀饭5240 分钟前
用changeset来管理你的npm包版本
前端·npm
TeamDev40 分钟前
基于 Angular UI 的 C# 桌面应用
前端·后端·angular.js
Komorebi゛1 小时前
【CSS】斜角流光样式
前端·css
Irene19911 小时前
CSS 废弃属性分类总结
前端·css
青莲8431 小时前
Android 事件分发机制 - 事件流向详解
android·前端·面试
musashi1 小时前
用 Electron 写了一个 macOS 版本的 wallpaper(附源码、下载地址)
前端·vue.js·electron
满天星辰1 小时前
Typescript之类型总结大全
前端·typescript