Don’t do : Tons of logic inline code in the templates (funcao dentro do template)

PHOTO EMBED

Thu Feb 09 2023 18:31:09 GMT+0000 (Coordinated Universal Time)

Saved by @ilivanilton #angular #rxjs-pattern

//problem
@Component({
  template: `
    <p>Welcome {{ fullName() }}!</p>
`
})
export class PersonComponent {  
@Input() person: { firstName: string, lastName: string };  constructor() { }  
fullName() {
    return this.person.firstName + ' ' + this.person.lastName
  }  

}

//solusion
@Component({
  template: `
    <p>Welcome {{  name | nameToString  }}!</p>
`
})
export class PersonComponent {
@Input() person: { firstName: string, lastName: string };  constructor() { }  

}


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

@Pipe({
  name: 'nameToString'
})
export class IdPathPipe implements PipeTransform {
  transform(value): string {
    return value.firstName = value.lastName
content_copyCOPY

https://medium.com/gitconnected/bad-practices-you-should-avoid-with-angular-development-58098e5542d5