VeeValidate,确认规则不适用于 ValidationProvider
VeeValidate, Confirmed rule not working on ValidationProvider
我正在尝试在密码验证提供程序上添加 vee-validate 规则并确认密码。 v-validate 必须在我必须向文本框添加规则的地方工作。但就我而言,我必须使用 Validation Provider。请帮忙!!!
版本
vee-validate: 2.1.7
vue: 2.9.6
代码
<ValidationObserver ref="adminInfo">
<v-layout row wrap>
<v-flex xs12 md6>
<ValidationProvider name="password" rules="required|min:5|max:35" ref="password">
<v-text-field
solo
v-model="administratorInfo.newPassword"
label="Set New Password"
required
slot-scope="{
errors,
valid
}"
:error-messages="errors"
:success="valid"
></v-text-field>
</ValidationProvider>
</v-flex>
<v-flex xs12 md6>
<ValidationProvider name="confirm password" rules="'required|confirmed:password'">
<v-text-field
solo
v-model="administratorInfo.cNewPassword"
label="Confirm Password"
required
slot-scope="{
errors,
valid
}"
:error-messages="errors"
:success="valid"
></v-text-field>
</ValidationProvider>
</v-flex>
</v-layout>
</ValidationObserver>
获取错误:
无法读取未定义的 属性“$watch”
最终通过将 ref="password" 替换为 vid="password" 找到了解决方案。找到解决方案 here。
但是我不明白什么是vid,为什么是vid?
这可能与此无关,但请确保您的 ValidationProvider
确认密码中有 v-model
我正在尝试在密码验证提供程序上添加 vee-validate 规则并确认密码。 v-validate 必须在我必须向文本框添加规则的地方工作。但就我而言,我必须使用 Validation Provider。请帮忙!!!
版本
vee-validate: 2.1.7
vue: 2.9.6
代码
<ValidationObserver ref="adminInfo">
<v-layout row wrap>
<v-flex xs12 md6>
<ValidationProvider name="password" rules="required|min:5|max:35" ref="password">
<v-text-field
solo
v-model="administratorInfo.newPassword"
label="Set New Password"
required
slot-scope="{
errors,
valid
}"
:error-messages="errors"
:success="valid"
></v-text-field>
</ValidationProvider>
</v-flex>
<v-flex xs12 md6>
<ValidationProvider name="confirm password" rules="'required|confirmed:password'">
<v-text-field
solo
v-model="administratorInfo.cNewPassword"
label="Confirm Password"
required
slot-scope="{
errors,
valid
}"
:error-messages="errors"
:success="valid"
></v-text-field>
</ValidationProvider>
</v-flex>
</v-layout>
</ValidationObserver>
获取错误:
无法读取未定义的 属性“$watch”
最终通过将 ref="password" 替换为 vid="password" 找到了解决方案。找到解决方案 here。
但是我不明白什么是vid,为什么是vid?
这可能与此无关,但请确保您的 ValidationProvider
确认密码中有 v-model