我有一个带有附加图标的表单v文本字段,可在单击时触发方法 无论如何,是否有条件隐藏/显示此附加图标?
即使我有条件地禁用了v-text-field,附加图标仍然可以点击...
<v-text-field
name="email"
autocomplete="off"
v-on:input="userEmailChanged"
:placeholder="$t('lang.views.member.enter_new_email')"
:readonly="isReadOnly"
:label="$t('lang.views.home.contactForm.email')"
v-model="user.email"
prepend-icon="email"
append-icon="edit"
@click:append="editEmail"
v-validate="'email'"
data-vv-name="email"
:error-messages="errors.collect('email')">
</v-text-field>
我可以在editEmail方法中插入一个测试,但是从视觉上看,我更喜欢在editMail方法被触发时隐藏图标。
答案 0 :(得分:4)
只需有条件地使用道具,并在需要隐藏时将条件设置为false
:
<v-text-field
:append-icon="showIcon ? 'edit' : undefined"
@click:append="editEmail"
></v-text-field>
data: () => ({
showIcon: true
}),
methods: {
editMail() {
// your code code
this.showIcon = false;
}
}
如果要使其再次可见,请将其还原为true
。
<v-text-field
clearable
clear-icon="mdi-close-circle"
@click:clear="clearMessage"`
/>
methods: {
clearMessage () {
this.message = ''
},
}