파이프를 사용하여 json을 필터링하고 값에 따라 이름을 표시합니다.
이것은 내 JSON입니다
bankAccountUsage = [
{ value: 1, name: "x" },
{ value: 2, name: "y" },
{ value: 3, name: "z" }
];
이것은 PIPE입니다.
import { Pipe, PipeTransform } from '@angular/core';
import { StaticValuesService } from '../../services/static-values.service';
import { } from '../../services/static-values.service';
@Pipe({
name: 'accountUsageType'
})
export class AccountUsageTypePipe implements PipeTransform {
private Accounusages;
transform(value: number, args?: any): any {
this.Accounusages.filter(val => {
if (val.value === value) {
console.log(val);
return val.name;
}
});
}
constructor(private _statcvalues: StaticValuesService) {
this.Accounusages = this._statcvalues.bankAccountUsage;
}
}
이것은 Console.log (val)의 결과입니다.
Object {value: 1, name: "x"}
HTML :
<td>{{account.AccountType | accountUsageType}}</td>
하지만 결과는 비어 있습니다
감사
return
진술을 놓치고 있습니다 ;value
는 primitive variable
이므로 파이프 는 물론 단일 variable
. Array#find
다음과 같이 방법을 사용할 수 있습니다 .return this.Accounusages.find(val => val.value === value);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다