正在删除typescript中数组中的多个相同数据


  1. 我想看到一个单独的数据,如您在图片中看到的。请在此处输入图像描述

TypeScript

onQualityControlWareHouseStock(item)
{    
alert(item)
this.qualitycontrolservice.getWareHouseStock(item).subscribe((x:any) =>  {
this.qualityControlWareHouseStock = x.Result;   

})
}

Html

<select>                        
<option *ngFor="let binCode of qualityControlWareHouseStock" [ngModel]="binCode.BinCode" ngDefaultControl>{{binCode.BinCode}}</option>
</select>

仓库模型具有BinCode字段

由于使用了Observable,您可以使用take(1(获得第一个返回。一旦发出一个值,这将取消订阅您的Observable

this.qualitycontrolservice.getWareHouseStock(item).pipe(take(1)).subscribe(
(x:any) =>  {
this.qualityControlWareHouseStock = x.Result;   
}

另一种解决方案是,如果您只想返回一次元素,但可以返回多个元素只存储唯一条目

function onlyUnique(value, index, self) {
return self.indexOf(value) === index;
}
this.qualitycontrolservice.getWareHouseStock(item).pipe(take(1)).subscribe(
(x:any) =>  {
this.qualityControlWareHouseStock = x.Result.filter(onlyUnique);   
}

最新更新