I use Vee Validate, it work fine
<q-field
:error="errors.has('name')"
:error-label="errors.first('name')"
>
<q-input
v-validate="rules.name"
v-model="form.name"
name="name"
float-label="Name"
/>
</q-field>
--------
// Data
form: {
name: '',
},
rules: {
name: {
required: true,
},
// Methods
submitForm() {
this.$validator.validate().then(result => {
if (result) {
// success
}else{
// error
}