Olá, eu tenho uma tag select e queria resetar os options a cada tecla que eu digitar, como faço isso no angular?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá, eu tenho uma tag select e queria resetar os options a cada tecla que eu digitar, como faço isso no angular?
Olá, Pablo! Tudo bem?
Desculpa pela demora!
Você pode fazer isso escutando os eventos de tecla do usuário, com keyup:
<input (keyup)="atualizaSelect()" [(ngModel)]="valorDigitado" />
Com isso, você tem acesso ao valor digitado, e um método será invocado sempre que o usuário digitar um caractere, apagar, etc.
Supondo que o seu select também seja baseado em algo do componente, como uma coleção, você poderia fazer algo como:
valorDigitado = '';
valoresSelect = [];
valorSelecionado = ''
atualizaSelect() {
// lógica de atualização baseada no valor digitado
this.valoresSelect = novosValores;
}
<select [(ngModel)]="valorSelecionado">
<option *ngFor="let valor of valoresSelect" [ngValue]="valor">{{valor}}</option>
</select>
Acredito que seja isso. Espero ter ajudado, bons estudos!