问题描述
data: {
personal: {
email: '',first_name: '',last_name: '',password: '',password_confirmation: '',phone: '',work_email: ''
},company: {
address: '',annual_revenue: null,city_id: null,country: 'BRA',company: '',company_city_document: '',company_document: '',company_legal_name: '',position: '',state_id: null,vat: null,website: '',work_phone: '',zipcode: ''
}
}
我想从我的 mixin 访问子对象,但是当我通过参数发送属性时,我在 mixin 上未定义,我像这样发送:
<TextField
@input="checkFormInvalidity('personal.first_name')"
id="first_name"
label="Nome"
/>
当用户输入任何内容时,vue 会发出他输入的内容,在我的 mixin 中有一个简单的验证方法,如下所示:
checkFormInvalidity (field) {
field
? this.$v.data[field].$touch()
: this.$v.$touch()
return field
? !!this.$v.data[field].$invalid
: !!this.$v.$invalid
}
当我这样做时:
console.log(this.data[field])
我收到“未定义”是因为我不知道如何从数据中访问子对象,在这种情况下将是“data.personal.first_name”。 如果我在参数“字段”中只收到“个人”,我可以看到所有数据属性。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)