

Lwc自定义开发时,当使用【lightning-input】作为输入框,在发生错误清空下,需要继续输入信息,输入过程中如下图error信息不会消失,只有在失去焦点时才会消失。



Lwc代码例:
<template>
<lightning-card title="input demo">
<lightning-input type="text" value={inputValue} onchange={handleChangeEvent} required label="test input">
</lightning-input>
</lightning-card>
</template>import { LightningElement, track } from 'lwc';
export default class ExampleLwcInputRequired extends LightningElement {
@track inputValue = '';
handleChangeEvent(event) {
this.inputValue = event.detail.value;
}
}现在的需求是在输入过程中,error信息自动消失,要如何实现呢,解决方法是利用setCustomValidity方法,设置空值,然后调用reportValidity方法。
如下:
import { LightningElement, track } from 'lwc';
export default class ExampleLwcInputRequired extends LightningElement {
@track inputValue = '';
handleChangeEvent(event) {
this.inputValue = event.detail.value;
if(this.template.querySelector('lightning-input').checkValidity()) {
this.template.querySelector('lightning-input').setCustomValidity('');
this.template.querySelector('lightning-input').reportValidity();
}
}
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。