解决Vue+Element UI使用表单rules国际化时From表单验证信息不能实时更新

这篇具有很好参考价值的文章主要介绍了解决Vue+Element UI使用表单rules国际化时From表单验证信息不能实时更新。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家!

博主在工作之余开始进行自动化测试平台的开发,虽然已经996一个月了但是还是在使劲挤时间做这件事情,目前平台使用前端框架vue-element-admin进行简化后二次开发,目前保留了原框架中的国际化、主题色、全局搜索、字体大小以及右侧悬浮设置菜单,更多细节后续会在系列文章中进行更新~

问题描述

在默认中文时,点击登录或者失去输入框焦点时测试时,表单验证消息没有问题如图1,此时如果切换到英文时就会出现验证信息还是中文的情况如图2所示

解决Vue+Element UI使用表单rules国际化时From表单验证信息不能实时更新,Vue,vue,elementui,vue国际化,form验证刷新,vue表单信息
解决Vue+Element UI使用表单rules国际化时From表单验证信息不能实时更新,Vue,vue,elementui,vue国际化,form验证刷新,vue表单信息

点击注册按钮切换注册表单,此时会重置表单数据,所以不会出现验证提示信息与语言不符情况

解决Vue+Element UI使用表单rules国际化时From表单验证信息不能实时更新,Vue,vue,elementui,vue国际化,form验证刷新,vue表单信息

解决方法

方法1

使用computed计算属性监控自己定义的变量

computed: {
    loginRules() { // :rules="loginRules"
      return {
        username: [
          { required: true, message: this.$t('login.errUserNameMsg'), trigger: 'blur' }
        ],
        password: [
          { required: true, message: this.$t('login.errPasswordMsg'), trigger: 'blur' }
        ]
      }
    }
  }

方法2

通过watch监听切换中英文时,重置表单验证,这个是博主比较喜欢的,其实不需要保留上一次语言产生的验证提示,直接重置这样看着比较舒服干净,也不存在语言与提示信息不符的情况

watch: {
  // 监听切换中英文时,重置表单验证
  '$i18n.locale': function() {
    this.$refs['loginForm'].clearValidate()
  }
}

最终效果

解决Vue+Element UI使用表单rules国际化时From表单验证信息不能实时更新,Vue,vue,elementui,vue国际化,form验证刷新,vue表单信息文章来源地址https://www.toymoban.com/news/detail-642774.html

到了这里,关于解决Vue+Element UI使用表单rules国际化时From表单验证信息不能实时更新的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 用i18n 实现vue2+element UI的国际化多语言切换详细步骤及代码

    这个地方要注意自己的vue版本和i1n8的匹配程度,如果是vue2点几,记得安装i18n的@8版本,不然会自动安装的最新版本,后面会报错哦,查询了下资料,好像最新版本是适配的vue3。 在src下面新建i18n文件夹,然后在里面新建index.js,里面的内容如下 新建i18n文件夹里面新建config文

    2024年02月14日
    浏览(46)
  • element-ui 表单校验 rules 配置

    指示type要使用的验证器。可识别的类型值为: string :类型必须为 string 。 type  默认是  string。 number :类型必须为 number 。 boolean :类型必须为 boolean。 integer :类型必须为  number  且为整数。 float :类型必须为  number  且为浮点数。 array :类型必须为数组。 enum :值必须

    2024年02月04日
    浏览(53)
  • 动态绑定表单的rules---element-ui

    在 Vue 3 中,你可以使用  refs  属性与  v-model  指令来动态绑定表单数据和验证规则。要动态删除绑定的验证规则,可以通过修改  ref  的 $rules 属性来实现。 例如,假设你有一个简单的表单组件,它使用  ref  来绑定表单数据和验证规则: 如果要动态删除  rules.name  的验

    2024年02月15日
    浏览(42)
  • vue element form rules表单规则验证,输入框有值,但验证始终不消失问题的个人解决办法

             做项目时在el-form中遇到了设定了表单验证规则,但只要输入值就显示未输入的情况:         根据网上查找的结果,rules中的名称要与from-item中的prop别名相同,看了一下没问题    后来在网上看到这篇文章:vue element form表单规则验证,有值,但验证始终不消失

    2024年02月12日
    浏览(53)
  • element-ui form表单的动态rules校验

    在vue 项目中,有时候可能会用到element-ui form表单的动态rules校验,比如说选择了哪个选项,然后动态显示或者禁用等等。 我们可以巧妙的运用element-ui form表单里面form-item想的校验规则来处理(每一个form-item项都可以单独校验)。 上代码: 重点是这个: :rules=“sqyxForm.jtpslx

    2024年02月15日
    浏览(52)
  • 【element-ui】form表单动态修改rules校验项

    在项目开发过程中,该页面有暂存和提交两个按钮,其中暂存和提交必填项校验不一样,此时需要动态增减必填项校验 ,解决方法如下: 增加rules校验项 删除rules校验项

    2024年02月04日
    浏览(61)
  • vue+element多层表单校验prop和rules

    核心点:外层循环是item和index,内层循环是item2和index2 如果都是定义的同一个属性名 外层循环得写 :prop=\\\"\\\'block.\\\'+index+\\\'.numerical\\\'\\\" 同理内层循环就得写 :prop=\\\"\\\'objectSpecs.\\\'+ index2 + \\\'.numerical\\\'\\\" 校验函数方法 :rules=\\\"getRules(item2, item2.name)\\\"

    2024年02月13日
    浏览(35)
  • 记一次前端Vue项目国际化解决方案

    有一个vue项目,要实现国际化功能,能够切换中英文显示,因为该项目系统的用户包括了国内和国外用户。 1、页面表单上的所有中文标签要国际化,包括表单属性标签、表格列头标签等, title=“数量”; 2、输入框的提示内容需要国际化,如 placeholder=“选择日期” 3、js代码

    2024年02月20日
    浏览(50)
  • vue element ui From表单校验不生效问题解决

    解决方案① el-from 上要使用 :model 不要使用 v-model 解决方案② el-from-item 上是否有加 prop ,并确定 prop 是不是和编写的规则相同 解决方案③ $refs[formName] 与 $refs.formName 注意事项 前者提交的时候要传参 @click=\\\"submitForm(\\\'ruleForm\\\')\\\" 不然不生效 解决方案④网上有人说 未在 data 里面声

    2024年02月11日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包