【发布时间】:2020-02-25 03:31:09
【问题描述】:
我在 Nuxt.js 中有各种 HTML 选择元素。我也在使用 Vuelidate 进行验证,这按预期工作。这是我表单中的典型选择框:
<select
id="location"
name="location"
v-model="form.location"
@blur="$v.form.location.$touch()"
:class="{error: appendErrorClass($v.form.location)}"
>
<option :value="null" hidden>Choose...</option>
<option
v-for="(item, index) in $store.state.quotes.data.practiceStates"
:key="index"
:value="item.data">
{{item.display}}
</option>
</select>
在选择任何选项之前,我注意到所有选择字段上的以下内容。
我尝试在测试选择字段上删除任何 Vue 魔法,看看是否会发生相同的结果。
<select id="location1" name="location1">
<option value="" hidden>Choose...</option>
<option value="one">one</option>
<option value="two">two</option>
<option value="three">three</option>
</select>
仍然看到valid: true。有什么我忽略的东西会导致有效性默认为真吗?在此先感谢您提供有关此问题的任何帮助或指导。
更新澄清:
Vuelidate 验证工作得很好。我正在处理的问题是选择字段属性Validity.validate。我只提到 Vuelidate 是为了提供完整的上下文。
【问题讨论】: