element-ui:el-input输入数字-整数和小数_el-input 输入数字_彭世瑜的博客-程序员秘密

技术标签: elementui  vue.js  javascript  

需求是:

  • 输入框只能输入数字,包括整数和小数

发现网上大部分文章的处理方式:

  1. 通过正则来处理输入,对其合法性进行判断校验,再将提示信息反馈给用户。体验欠佳
  2. 输入完成后进行解析,将字符串转换为数字。会导致显示的值和真实值不一致

比对一下几种方案后,最终使用的是 el-input type="number" 优化实现
在这里插入图片描述

代码 App.vue

<template>
  <div class="">
    
    <h3>el-input</h3>
    <el-input v-model="value1"></el-input>

    <h3>el-input v-model.number</h3>
    <el-input v-model.number="value2"></el-input>
    
    <h3>el-input-number</h3>
    <el-input-number v-model="value3"
      :controls="false"></el-input-number>

    <h3>el-input type="number"</h3>
    <el-input v-model="value4"
      type="number"></el-input>

    <h3>el-input type="number" 优化</h3>
    <el-input v-model="value5"
      type="number"
      class="mo-input--number"></el-input>
  </div>
</template>

<script>
// created at 2022-06-02
export default {
      
  name: 'App',

  props: {
      },

  components: {
      },

  data() {
      
    return {
      
      value1: '',
      value2: '',
      value3: '',
      value4: '',
      value5: '',
    };
  },

  computed: {
      },

  methods: {
      
    async getData() {
      },
  },

  created() {
      
    this.getData();
  },
};
</script>

<style lang="less">
/* 去掉右侧上下箭头  */
.mo-input--number {
      
  input::-webkit-outer-spin-button,
  input::-webkit-inner-spin-button {
      
    -webkit-appearance: none;
  }
  input[type='number'] {
      
    -moz-appearance: textfield;
  }
}
</style>

<style lang="less" scoped>
</style>

依赖 package.json

{
    
  "scripts": {
    
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build"
  },
  "devDependencies": {
    
    "@vue/cli": "^5.0.4",
    "@vue/cli-service": "^5.0.4",
    "css-loader": "^6.7.1",
    "less": "^4.1.2",
    "less-loader": "^11.0.0",
    "style-loader": "^3.3.1",
    "vue-template-compiler": "^2.6.14"
  },
  "dependencies": {
    
    "element-ui": "^2.15.8",
    "vue": "2"
  }
}

入口文件 main.js

import Vue from "vue";
import ElementUI from "element-ui";
import "element-ui/lib/theme-chalk/index.css";
import App from "./App.vue";

Vue.use(ElementUI);

new Vue({
    
  el: "#app",
  render: (h) => h(App),
});

几种方式对比

方式 效果
el-input 可以输入数字,和字符串
el-input v-model.number 可以输入数字,和字符串
el-input-number 可以输入数字,和字符串
el-input type=“number” 仅能输入数字(整数和小数)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/mouday/article/details/125095966

智能推荐

pugixml库的使用(by yukin_xue)_pugixml docx_yukin_xue的博客-程序员秘密

这两天接触了一个c++编写的xml解析库——pugixml,能解析xml内容,支持xpath解析,且能跨linux平台,不错!以前一直习惯用CMarkup,主要用它读写xml配置文件,但CMarkup不支持xpath,也只能在windows用,虽然习惯了CMarkup,不过若需要xpath解析,又需要跨linux平台,相比之下,pugixml确实是很好的选择,操作速度也快。学习文档:http://

Gitlab代码泄露监控工具_bozheng2332的博客-程序员秘密

GSIL(GitHub敏感信息泄露)Python3.6安装$ yum -y groupinstall "Development tools"$ yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel l...

EntityManager的find()与getReference()的区别_清风2556的博客-程序员秘密

EntityManager的find()与getReference()的区别 (2010-03-09 21:18:23)转载▼ 分类: EJB先说相同点    这两个方法都接受实体的 class和代表实体主键的对象作为参数。由于它们使用了Java泛型方法,无需任何显示的类型转换即可获得特定类型的实体对象。其中,在pri

react示例_最好的React示例_cumian8165的博客-程序员秘密

react示例React (also known as React.js) is one of the most popular JavaScript front end development libraries. Here is a collection of React syntax and usage that you can use as a handy guide or referen...

一篇文章带你看懂前端巨坑!_weixin_34221775的博客-程序员秘密

前端工程师这个行业大家已经很熟悉了,随然找一个行业诞生也没有多久。现在还是有很多人对前端这个行业没有一个很好的诠释,本文将会结合行业标准来帮助大家深入的理解这个职业。如果你没有从事软件开发工作、正在从事产品运营相关、需要招聘前端开发者、入门前端的新手、对前端开发感兴趣 等等,都有必要好好 了解一下。现在所说的前端,可不是你做个页面就可以了。前端早在11年就开始大规模招聘了,在之前,大家熟知的 ...

轮子之路-搭建小型视频转发系统_前端造轮子视频_卡萨巴的博客-程序员秘密

前言本文结合作者实际项目经历介绍如何搭建一个小型的视频直播系统,包括设计思路,开发过程以及优化方向还有踩过的坑。功能梳理2014年由于项目要求需要具备将远端的现场视频信息回传到以供多个地方的用户同时查看的功能,同时由于系统采用B/S架构,因此视频只能通过浏览器来访问,而且系统基本浏览器按照chrome设计,因此视频实时浏览必须支持chrome,此外,还需要支持历史回放。需求总结如下: 1. 支持

随便推点

Ztree + PHP 无限级节点 递归查找节点法_zzm_的博客-程序员秘密

为什么80%的码农都做不了架构师?&gt;&gt;&gt; ...

sql优化实战之全值匹配和范围查询_打码王子的博客-程序员秘密

一、前提准备创建一个employees表,一个主键索引,一个联合索引,表结构如下:-- 创建表CREATE TABLE `employees` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(24) NOT NULL DEFAULT '' COMMENT '姓名', `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄', `position` varchar(20) NOT N

影视神器:它支持双端,尽快安装!_宅哥技术的博客-程序员秘密

介绍最近大家都知道iOS应用是无法下载了,今天找到了一个神器,目前还是无广告的,观影还是不错,这款应用也上架了AppStore商店,名字为:人人佳 ,我下载体验了一下,还可以,有一个起屏广...

python颜色填充_在matplotlib中用颜色填充shapefile多边形_weixin_39629269的博客-程序员秘密

您似乎想在basemap中生成一个choropleth图。为此,您需要一个colormapcmap和一个规范化norm,以便将值映射到颜色,cmap(norm(val))。对于每个形状,可以将Polygon的颜色设置为字典中相应的颜色,在本例中是cmap(norm(dict1[info['ID_2']]))。在在PatchCollection内,match_original=True需要设置以保持...

人工智能的世界,学Python将立于不败之地!_戏精程序媛的博客-程序员秘密

近日,看到了关于程序员工资统计的数据。2020年5月全国招收程序员312761人。2020年5月全国程序员平均工资14542元,工资中位数12500元,其中95%的人的工资介于5250元到35000元。而在全国最大的同性组织某Hub上浏览时候,又发现这样的一条信息:Python 116K 超过 C++、JS, 薪酬排行第一(最大招聘网站Indeed.com数据)前不久IEEE发布了顶级编程语言交互排行榜:Python超越Java高居首位。而且随着大数据和人工智能的发展,Python受到了越来

推荐文章

热门文章

相关标签