vue自定义指令只能输入小数或者整数
时间: 2024-10-16 15:05:29 浏览: 32
vue自定义指令实现仅支持输入数字和浮点型的示例
Vue.js 自定义指令可以用于增强组件的功能,比如限制用户输入的格式。如果你想要创建一个只允许输入小数或整数的自定义指令,可以利用 Vue 的 v-model 和正则表达式来实现。下面是一个简单的示例:
```javascript
Vue.directive('number-only', {
bind: function (el, binding) {
el.addEventListener('input', function (e) {
const value = e.target.value;
if (!/^[-+]?[0-9]*\.?[0-9]+$/.test(value)) { // 正则表达式匹配数字和小数点
e.target.value = value.replace(/[^0-9.-]/g, ''); // 清除非数字字符
}
});
},
});
```
然后在模板上应用这个指令:
```html
<input type="text" v-model.number-only>
```
当用户试图输入非数字、小数点之外的字符时,该指令会清除它们。
阅读全文