C'est mon tube: importez {Pipe, PipeTransform} depuis '@ angular / core'; @Pipe ({name: 'transformFullName'}) classe d'exportation TransformFullNamePipe implémente PipeTransform {transform (value: string, ......

1
Szyszka947 14 mars 2021 à 17:57

2 réponses

Meilleure réponse

Il y a un tuyau dans Angular - titlecase:

{{'tHIs is mIXeD CaSe' | titlecase}}
<!-- output is expected to be "This Is Mixed Case" -->

https://angular.io/api/common/TitleCasePipe

Je pense que c'est ce que vous avez essayé de faire:

import { Pipe, PipeTransform } from '@angular/core';

@Pipe({
  name: 'transformFullName'
})
export class TransformFullNamePipe implements PipeTransform {

  transform(value: string): string {
    const fullName: string[] = value.trim().split(' ');
    fullName[0] = fullName[0].charAt(0).toLocaleUpperCase();
    fullName[1] = fullName[1].charAt(0).toLocaleUpperCase();
    console.log(fullName);
    if (fullName[0].length + fullName[1].length > 41) {
      return fullName[0].charAt(0) + '. ' + fullName[1].charAt(0) + '.';
    }
    return fullName[0] + ' ' + fullName[1];
  }

}
1
oz1985oz 14 mars 2021 à 16:16

Vous n'attribuez pas les valeurs à fullName[0] et fullName[1]. tu devrais faire :

fullName[0] = fullName[0].charAt(0).toLocaleUpperCase();
fullName[1] = fullName[1].charAt(0).toLocaleUpperCase();

Voici un exemple: https://stackblitz.com/ edit / angular-custom-pipes-slnu4k? file = app / exponential-Strength.pipes.ts

0
mosc9575 14 mars 2021 à 16:48