Estoy tratando de establecer una variable llamada fecha usando el valor definido en una lista desplegable definida con ngFor.
Primero obtengo todos los valores de la lista y luego los itero usando ngFor como este
<li class="dropdown-menu" aria-labelledby="dropdownMenuButton" *ngFor ="let fecha of fechas">
<button class="dropdown-item" type="submit" *ngFor ="let fecha of fechas" (click)= "setFecha(this.value)" value="{{fecha._id}}">{{fecha._id}}</button>
</li>
Sin embargo, cuando hago clic en el botón, la consola vuelve
ERROR TypeError: "fecha is undefined"
¿Hay un error cuando paso el valor a la función o es una forma incorrecta de acceder al valor del botón?
2 respuestas
Intente cambiar esto a fecha También noté que has anidado para el bucle, ¿está destinado?
<li class="dropdown-menu" aria-labelledby="dropdownMenuButton" *ngFor ="let fecha of fechas">
<button class="dropdown-item" type="submit" *ngFor ="let fecha of fechas" (click)= "setFecha(fecha)" value="{{fecha._id}}">{{fecha._id}}</button>
</li>
Si el bucle anidado no está previsto, el código debería verse así
<li class="dropdown-menu" aria-labelledby="dropdownMenuButton" *ngFor ="let fecha of fechas">
<button class="dropdown-item" type="submit" (click)= "setFecha(fecha)" value="{{fecha._id}}">{{fecha._id}}</button>
</li>
Tienes ngFor en tu li y tu botón.
Intenta algo como:
<li class="dropdown-menu" aria-labelledby="dropdownMenuButton" *ngFor ="let fecha of fechas">
<button class="dropdown-item" type="submit" (click)= "setFecha(fecha)" value="{{fecha._id}}">{{fecha._id}}</button>
Preguntas relacionadas
Nuevas preguntas
angular
Preguntas sobre Angular (que no debe confundirse con AngularJS), el marco web de Google. Use esta etiqueta para preguntas angulares que no son específicas de una versión individual. Para el marco web anterior de AngularJS (1.x), use la etiqueta angularjs.