Je suis en train de mettre en œuvre un tuyau de troncature:Comment faire une pipe multi-argument angulaire 2.0.0
import { Pipe, PipeTransform } from '@angular/core'
@Pipe({ name: 'truncate' })
export class TruncatePipe implements PipeTransform {
transform(value: string, amount: number, truncateChar: string) : string {
console.log("amount", amount);
console.log("truncateChar", truncateChar);
let limit = amount ? amount : 10;
let trail = truncateChar ? truncateChar : '...';
return value.length > limit ? value.substring(0, limit) + trail : value;
}
}
D'une certaine façon dans mon modèle, il imprime toujours undefined
pour truncateChar
, mais il ne capte la amount
.
Dans mon modèle, j'ai essayé les syntaxes suivantes (sur leur propre tour):
{{ item.name | truncate: 20 : "a" }}
{{ item.name | truncate: 20 : 'a' }}
{{ item.name | truncate: 20 : a }}
Comment pourrais-je mettre en œuvre cela en utilisant plusieurs arguments (caractères max et le caractère facultatif à la fin)?
Oui, aucune idée de ce qui se passait. Ah ... puisque c'est dans un autre dossier (partagé maintenant), je suppose que la compilation n'a pas pris le changement. Bien qu'attendre, je voyais encore le "console.log" .... très étrange. Mais en effet, maintenant ça marche. – PascalVKooten