我有一个表的数据从数据库,我需要过滤该表使用下拉菜单。问题是,即使我设法在控制台上获得已过滤的表,该表也不会被过滤:它只是前端没有显示。我的过滤函数如下:
FiltrarTipoGestion(data) {
let tipoGestion = data;
if (data != "0") {
this.listPerfilamiento2 = this.listPerfilamiento.filter(x => x.tipoGestionDescripcion.toLowerCase() == tipoGestion.toLowerCase());
} else {
this.listPerfilamiento2 = this.listPerfilamiento;
}
}HTML中的过滤器如下所示:
<label class="col-lg-1 float-left">Tipo de gestión</label>
<div class="col-lg-2 float-left">
<select (change)="FiltrarTipoGestion($event.target.value)" [(ngModel)]="perfilamiento.tipoGestionDescripcion" class="form-control form-control-sm">
<option *ngFor="let tg of listTipoGestion;" value="{{tg.nombre}}">{{tg.nombre}}</option>
</select>
</div>我已经减少了在前端过滤器中的错误,因为我可以在执行console.log时过滤数据。任何帮助或提示都是非常感谢的。
编辑:数组从这里获取数据:
this._service.getListarPerfilamiento(this.TipoPerfilId).subscribe((data) => {
this.listPerfilamiento = data['data'];
this.listPerfilamiento2 = data['data'];
this.listPerfilamientoAll = data['data'];
if (this.TipoPerfilId == 1) {
this.ShowAgencia = true;
this.ShowMensajeria = false;
} else {
this.ShowAgencia = false;
this.ShowMensajeria = true;
}
})发布于 2021-05-05 03:57:13
我发现了问题:我需要在ngFor上使用新数组的过滤列表来显示:我更改了
<tr *ngFor="let pf of listarPerfilamiento; index as i; let l = count;" style="cursor: pointer;">为
<tr *ngFor="let pf of filteredPerfilamiento; index as i; let l = count;" style="cursor: pointer;">感谢大家花时间阅读和评论。
https://stackoverflow.com/questions/67378368
复制相似问题