在打字稿中删除数组中的多个相同数据
Deleting more than one same data in array in typescript
- 我想看单条数据,如图所示enter image description here
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) 获得第一个 return。一旦发出一个值,这将取消订阅您的 Observable
this.qualitycontrolservice.getWareHouseStock(item).pipe(take(1)).subscribe(
(x:any) => {
this.qualityControlWareHouseStock = x.Result;
}
另一个解决方案,如果你只想 return 一个元素一次但你可以
仅存储唯一条目
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);
}
- 我想看单条数据,如图所示enter image description here
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) 获得第一个 return。一旦发出一个值,这将取消订阅您的 Observable
this.qualitycontrolservice.getWareHouseStock(item).pipe(take(1)).subscribe(
(x:any) => {
this.qualityControlWareHouseStock = x.Result;
}
另一个解决方案,如果你只想 return 一个元素一次但你可以 仅存储唯一条目
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);
}