Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

274
Vistas
Dar id dinámico Angular2 Binds

Mi JavaScript:

 this.items = [ {name: 'Amsterdam1', id: '1'}, {name: 'Amsterdam2', id: '2'}, {name: 'Amsterdam3', id: '3'} ];

Mi HTML:

 <ul> <li *ngFor="#item of items" id={{item.id}}> {{ item.name}} </li> </ul>

Quiero asignar una identificación dinámica a cada elemento, pero no puedo hacer que funcione. Aparece el nombre pero no el id.

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

la forma en que dijiste funciona, Angular 2.0.0.beta.8.

en este caso se puede utilizar por ejemplo:

  • [id]="item.id"
  • [attr.id]="item.id"
  • id={{item.id}}

     <ul> <li *ngFor="#item of items" #elem [id]="item.id"> {{ item.name}} ID: {{elem.id}} </li> </ul> <ul> <li *ngFor="#item of items" #elem [attr.id]="item.id"> {{ item.name}} ID: {{elem.id}} </li> </ul> <ul> <li *ngFor="#item of items" #elem id={{item.id}}> {{ item.name}} ID: {{elem.id}} </li> </ul>

Plunker

Puede consultar aquí para obtener más información sobre la sintaxis de la plantilla.

https://angular.io/guide/cheatsheet

over 4 years ago · Santiago Trujillo Denunciar

0

Todos los métodos proporcionados por @AngelAngel son correctos, pero solo para explicar por qué usar [attr.id] publicado como respuesta.

Angular por defecto usa property binding . Para decirle a Angular explícitamente que use el enlace de atributos, usamos en su lugar:

 <ul> <li *ngFor="#item of items" #elem [attr.id]="item.id"> {{ item.name}} ID: {{elem.id}} </li> </ul>

Con attr.id , debe optar explícitamente por el enlace de atributos porque el enlace de atributos es costoso. Los atributos se reflejan en el DOM y los cambios requieren, por ejemplo, verificar si los selectores de CSS están registrados y coinciden con este conjunto de atributos. El enlace de propiedad es solo JS y económico, por lo tanto, el valor predeterminado.

over 4 years ago · Santiago Trujillo Denunciar

0

<ul> <li *ngFor="#item of items" attr.id={{item.name}}> {{ item.name}} </li> </ul>

Esto debería funcionar (funcionó para mí en angular2).

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda