首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Vee-Validate (Vuejs)验证输入数组

使用Vee-Validate (Vuejs)验证输入数组
EN

Stack Overflow用户
提问于 2019-03-19 19:28:07
回答 1查看 5.1K关注 0票数 2

以下是工作原理:

代码语言:javascript
复制
 <li :key="index" v-for="(...) in items">
    <input type="text" name="itemFields[]" v-validate="required">
 </li>

 // ...

<div class="vv-errors">
    <ul>
        // shows only for last active input
        <li v-for="error in errors.collect('itemFields[]')">{{ error }}</li>
    </ul>
</div>

如果我将一些输入设为空,它会显示一条错误消息。但是,如果我随后用文本填充其他一些空输入,错误消息就会完全消失。不应该是这样的,因为另一个输入仍然是空的。总而言之,错误消息只考虑最后一个活动输入。

如果至少有一个输入为空,如何实现错误消息的显示?

EN

回答 1

Stack Overflow用户

发布于 2019-03-19 20:30:36

实际上,您面临的问题是因为所有输入的name字段都是相同的,应该是唯一的。因此,在使用v-for时,您可以执行以下操作:

代码语言:javascript
复制
 <div  v-for="i in 5" >
   <input type="text" :name="'email'+i" placeholder="Email" v-validate="'required|email'">
   <span class="error" v-if="errors.has('email'+i)">{{errors.first('email'+i)}} 
   </span>
  </div>

这是一个基本的example来解决你的问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55239953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档