0

我正在尝试使用 vee-validate 设置必需的和正则表达式属性。正则表达式位工作正常,但只要我添加了所需的属性,整个控件就会从表单中消失

这工作正常(小提琴),但缺少必需的属性(多行以便于阅读):

<input 
  v-validate="{ regex:/^((\d{3})[ -]|(\d{3}[ -]?)){2}\d{4}$/ }" 
  :class="{'input': true, 'is-danger': errors.has('phonenumber') }" 
  class="input is-primary" 
  name="phonenumber" 
  type="text" 
  placeholder="404-555-1212"
> <!-- end input -->

这会导致整个表单消失(小提琴)(多行以便于阅读):

<input 
  v-validate="{ required|regex:/^((\d{3})[ -]|(\d{3}[ -]?)){2}\d{4}$/ }" 
  :class="{'input': true, 'is-danger': errors.has('phonenumber') }" 
  class="input is-primary" 
  name="phonenumber" 
  type="text" 
  placeholder="404-555-1212"
> <!-- end input -->

我尝试使用逗号分隔 vee-validate 属性,但这也以同样的方式失败。

我错过了什么?

4

1 回答 1

2

我需要包含required: true,才能使属性正常工作。

像这样:

<input 
  v-validate="{ required: true, regex:/^((\d{3})[ -]|(\d{3}[ -]?)){2}\d{4}$/ }" 
  :class="{'input': true, 'is-danger': errors.has('phonenumber') }" 
  class="input is-primary" 
  name="phonenumber" 
  type="text" 
  placeholder="404-555-1212"
> <!-- end input -->
于 2018-08-02T21:03:53.973 回答