Input标签自动校验功能去除怎么实现

自动校验

注:以下输入框包含input、textarea

事情是这样的,上个星期,接到了一个需求,要求去除掉项目中的输入框的自动拼写检查功能,也就是下图出现的红线,这个检查是浏览器自带的

Input标签自动校验功能去除怎么实现

解决方法

其实是有解决方法的,而且也不难,很简单,只需要在输入框标签上加上一个属性spellcheck=false即可,也就是:

<input spellcheck=false /><textarea spellcheck=false />

解决思路

但是问题来了,我需要给全局的输入框标签都加上才行,由于本项目是使用了antd-design这个组件库,那我们来看看整个项目都有哪些组件包含了输入框标签呢?

1、Input:包含input

2、Select:包含input

3、InputNumber:包含input

4、Textarea:包含textarea

多种解决方法

1、ConfigProvider

Input标签自动校验功能去除怎么实现

ant-design官方提供了一个组件,可以用来为全局的组件进行统一配置,这个组件可以传入一个input的参数,即可配置全局的Input标签

Input标签自动校验功能去除怎么实现

也就是:

<ConfigProvider   input={{spellCheck: false}}></ConfigProvider>

由于这个配置只针对全局的Input,所以结果都有哪些组件成功去掉了拼写校验功能呢:

  • 1、Input:✅

  • 2、Select:❌

  • 3、InputNumber:❌

  • 4、Textarea:❌

2、修改defaultProps

大概的思路就是,修改ant-design的源码中的input这一部分,给Input、Textarea这些组件加上一个defaultProps,这个defaultProps长这样:

const defaultProps = {  spellCheck: false}

所以具体实现为以下代码

// Inputimport Input from 'antd/es/input';Input.defaultProps = {  ...Input.defaultProps,  ...defaultProps,};export default Input// Textareaimport TextArea from 'antd/es/input/TextArea';TextArea.defaultProps = {  ...TextArea.defaultProps,  ...defaultProps,};export default Textarea

结果就是,全局的Input、Textarea都去除了拼接检查了,但是Select、InputNumber却没有去除,因为他们是依赖了RCSelect、RCInputNumber这两个另外的组件,所以想改这两个,就得去改他们两依赖的组件,所以结果就是:

  • 1、Input:✅

  • 2、Select:❌

  • 3、InputNumber:❌

  • 4、Textarea:✅

3、拦截React.createElement

我们都知道在React中,只要涉及到JSX语法,最终在解析时都会通过React.createElement方法来创建标签

Input标签自动校验功能去除怎么实现

所以思路就是在最终调用React.createElement时,判断如果是input、textarea这两个类型的话,就给标签加上spellCheck: false这个属性,具体代码为

Input标签自动校验功能去除怎么实现

这样做的结果是:

  • 1、Input:✅

  • 2、Select:✅

  • 3、InputNumber:✅

  • 4、Textarea:✅

但是总是觉得直接涉及到React自带方法的修改,有点不太好。。

4、全局监听input事件

思路就是全局监听input这个事件,并在这个事件里去给触发事件的DOM节点增加spellCheck: false,具体代码为:

Input标签自动校验功能去除怎么实现

这样做的结果是:

  • 1、Input:✅

  • 2、Select:✅

  • 3、InputNumber:✅

  • 4、Textarea:✅

以上就是“Input标签自动校验功能去除怎么实现”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

文章标题:Input标签自动校验功能去除怎么实现,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/27534

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年9月20日 下午11:57
下一篇 2022年9月20日 下午11:58

相关推荐

  • web文件上传漏洞的示例分析

    文件上传功能模块 文件上传功能是大部分WEB应用的必备功能,网站允许用户自行上传头像、一些社交类网站允许用户上传照片、一些服务类网站需要用户上传证明材料的电子档、电商类网站允许用户上传图片展示商品情况等。然而,看似不起眼的文件上传功能如果没有做好安全防护措施,就存在巨大的安全风险。 文件上传漏洞原理…

    2022年9月22日
    48300
  • ftp服务器搭建部署与C#实现ftp文件上传的方法是什么

    一、简介 FTP是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文本协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。…

    2022年9月15日
    31900
  • vlookup函数匹配不出来只显示公式如何解决

    解决方法 名列前茅步,点击表格上方的“公式”按钮。 第二步,在下方菜单中找到并点击“显示公式”关闭它。 第三步,关闭完成,就可以发现我们的vlookup函数正常显示结果了。 关于“vlookup函数匹配不出来只显示公式如何解决”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“vlookup函…

    2022年9月24日
    88000
  • col在html中指的是什么

    col在html中是“列”的意思;col是html中的标签,是“column”的缩写,该标签是给表格中一个或者多个列应用样式,而不需要重复为每个单元格或每一行设置样式,标签规定了元素内部每一列的属性,只能在table或colgroup元素中使用该标签。 本教程操作环境:windows10系统、HTM…

    2022年9月2日
    18200
  • 怎么用SVG给favicon添加标识

    一、favicon 的获取方式 想知道获取方式,可以先了解设置方式。 一般有两种方式可以设置网站的 favicon。 名列前茅种,通过 link 标签设置(需要rel=”icon”属性) <link rel=”icon” href=”xxx.png”> 第二种,直接在网站根目录放一张fa…

    2022年9月8日
    24400
  • 怎么用Python实现自动化处理每月考勤缺卡数据

    一、效果展示 1.实现效果 首先来看下实现效果。 大体实现步骤如下: 步骤1:在D盘中新建“每月缺卡数据处理“文件夹(已在代码中固定死了,必须建该文件夹)。 步骤2:把处理考勤缺失的exe文件和原始数据文件放到step1新建的文件夹中。 步骤3:点击exe文件,会自动出来csv结果文件,具体格式如下…

    2022年9月21日
    23000
  • Vue transition过渡组件怎么用

    一、vue里面的transition组件 Vue提供了这个transition组件,可以使得在v-if条件渲染、v-show条件显示、动态组件的时候可以给到任意元素和组件添加了进入或离开元素过渡。 二、transition组件应用CSS过渡 在应用css过渡的时候,transition组件会在恰当的…

    2022年8月29日
    15900
  • Docker资源限制Cgroup怎么使用

    1.Cgroup简介 _cgroups,是一个非常强大的linux内核工具,他不仅可以限制被namespace隔离起来的资源, 还可以为资源设置权重、计算使用量、操控进程启停等等。所以cgroups (Control groups) 实现了对资源的配额和度量。 cgroups有四大功能: 资源限制:…

    2022年9月15日
    13700
  • word目录如何制作

    word目录制作方法: 1、打开需要设置目录的word文档,按住ctrl键,分别选中需要设置为标题的文本。 2、在“开始”选项卡中找到“样式”,点击上方的“标题1”,完成标题格式的设置。 3、光标移到首页首行前面,然后在“插入”标签栏点击“分页”,插入一空白页在首页,用于创建目录,使得文档更加美观。…

    2022年9月22日
    16200
  • windows pcstory常见问题怎么解决

    pcstory是什么 答:pcstory是一款游戏下载软件。 1、其中有着大量的优异正版单机游戏可以下载,各种游戏应有尽有。 2、而且软件有着优异的下载通道,即使上百GB的游戏也能很快下载。 3、软件还自带了游戏管理服务,可以移动、卸载在这里下载到的游戏。 4、此外,pcstory还拥有免费更新功能…

    2022年9月20日
    1.3K00
联系我们
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部