Vuetify v-file-input 验证

Veutify v-file-input validation

我想验证是否使用 v-file-input 和 vee-validate 中的 ValidationProvider 选择了一个文件。

下面是我的代码:

<v-flex>
  <ValidationProvider rules="required" v-slot="{ errors }">
    <v-file-input
      show-size
      accept=".xlsx"
      placeholder="Click here to select your file"
      label="File name"
      :error="errors.length > 0"
      :error-messages="errors[0]"
      @change="selectFile"
    >
    </v-file-input>
  </ValidationProvider>
</v-flex>

验证以某种方式起作用,但即使在我选择了一个文件后它也能很好地起作用:

我不确定我做错了什么?

发现我必须这样做,不知道为什么我上面的不起作用:

rules: [
   v => !!v || 'File is required',
   v => (v && v.size > 0) || 'File is required',
]

还有我的表格:

<v-flex>
  <ValidationProvider :rules="rules" v-slot="{ errors }">
    <v-file-input
      show-size
      accept=".xlsx"
      placeholder="Click here to select your file"
      label="File name"
      :error="errors.length > 0"
      :error-messages="errors[0]"
      @change="selectFile"
    >
    </v-file-input>
  </ValidationProvider>
</v-flex>

https://codepen.io/subashdbc/pen/eYpVOKq

在这里发布代码以帮助任何需要它的人。