Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

1.2K
Views
¿Cómo pasar el valor de enumeración en la plantilla angular como entrada?

Tengo un componente secundario que toma el tipo como entrada.
componente hijo:

 export enum PersonTypes { MALE = 'male', FEMALE = 'female' } @Component({ selector: 'app-child' }) export class ChildComponent { @Input() type: PersonTypes; }

Componente principal:

 @Component({ selector: 'app-parent' }) export class ParentComponent { }

En la plantilla de vista del componente principal:

 <div> <app-child [type]="PersonTypes.MALE"></app-child> <app-child [type]="PersonTypes.FEMALE"></app-child> </div>

Entonces, la pregunta es ¿cómo pasar los diferentes valores de enumeración en la plantilla? Encontré una respuesta que dice que necesitamos crear una nueva variable en el componente principal y luego asignar ese valor a "escribir" en la plantilla como se muestra a continuación.

 @Component({ selector: 'app-parent', template:` <div> <app-child [type]="malePerson"></app-child> <app-child [type]="femalePerson"></app-child> </div> ` }) export class ParentComponent { malePerson = PersonTypes.MALE; femalePerson = PersonTypes.FEMALE; }

para mí es una solución superada, ¿qué pasa si tenemos 10 propiedades de enumeración, terminamos creando 10 variables locales y asignarlas en la plantilla es demasiado?

¿Alguna solución mejor para esto?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Para usar Enum en la plantilla solo tiene que asignar directamente el Enum a una variable.

 @Component({ selector: 'app-parent' }) export class ParentComponent { public PersonTypesEnum = PersonTypes; // direct reference }

Ahora PersonTypesEnum se puede usar en una plantilla

 <div> <app-child [type]="PersonTypesEnum.MALE"></app-child> <app-child [type]="PersonTypesEnum.FEMALE"></app-child> </div>
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!