vue.js - 当我关闭表单对话框并重新打开时,表单仍然是红色且未初始化。
问题描述
我用 vuetify 写了一个这样的表格。
<v-form>
<v-text-field
autocomplete="off"
v-model="model.password"
:label="formschema.password.label"
:rules="[rules.required, rules.min]"
:append-icon="formschema.password.show ? 'mdi-eye' : 'mdi-eye-off'"
@click:append="formschema.password.show = !formschema.password.show"
:type="formschema.password.show ? 'text' : 'password'"
required
></v-text-field>
<v-text-field
autocomplete="off"
v-model="model.newpassword"
:label="formschema.newpassword.label"
:rules="[rules.required, rules.min]"
:type="formschema.newpassword.show ? 'text' : 'password'"
:append-icon="
formschema.newpassword.show ? 'mdi-eye' : 'mdi-eye-off'
"
@click:append="
formschema.newpassword.show = !formschema.newpassword.show
"
required
></v-text-field>
<v-text-field
autocomplete="off"
v-model="model.comfirmpassword"
:label="formschema.comfirmpassword.label"
:rules="[rules.required, rules.min]"
:append-icon="
formschema.comfirmpassword.show ? 'mdi-eye' : 'mdi-eye-off'
"
@click:append="
formschema.comfirmpassword.show = !formschema.comfirmpassword.show
"
:type="formschema.comfirmpassword.show ? 'text' : 'password'"
required
></v-text-field>
</v-form>
当我关闭它时(表单在对话框中),我清理数据,但是当我重新打开它时,它会返回错误:
"TypeError: Cannot read property 'length' of null"
请帮助我。我怎样才能重置表单数据但没有收到错误?
我清理我的表单只是让模型绑定到表单的 items = 默认模型。如:
this.model = this.defaultmodel
解决方案
我想这就是你要找的:
https://vuetifyjs.com/en/components/forms/#validation-with-submit-clear
this.$refs.form.resetValidation()
关闭对话框后,您基本上必须打电话。
推荐阅读
- vue.js - 如何让 VueJS + ESLint (Airbnb) + Prettier 一起工作?(VS代码)
- javascript - 无法在反应组件中使用 setState
- wordpress - 如何为 Woocommerce 类别和产品设置不同的缩略图大小
- vala - 如何覆盖vala中的属性?
- angular - 查询参数不起作用 Angular 5
- python - os.system Linux 翻译
- java - 项目在 intellij 中编译,但在导出时不编译
- javascript - 实例数组超出范围变得不可访问
- android - MaterialCardview 需要 Theme.AppCompat
- c - 循环C中的位