Угловая 2 трубы из отфильтрованного JSON
Я собираюсь использовать трубу для фильтрации некоторых JSON и показать имя на основе значения
это мой JSON
bankAccountUsage = [
{ value: 1, name: "x" },
{ value: 2, name: "y" },
{ value: 3, name: "z" }
];
это ТРУБА:
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>
Но результат пустой
Спасибо
1 ответ
Решение
- Вы скучаете по
return
заявление; - Ваш
value
это примитивvariable
Итак, труба должна вернуть, конечно же, однуvariable
, Вы могли бы использоватьArray#find
метод, как показано ниже:
return this.Accounusages.find(val => val.value === value);