Tengo un componente simple, pero por alguna razón recibo el siguiente error de tiempo de ejecución:
Se produjo una excepción no controlada al procesar la solicitud.
Excepción: el módulo Call to Node falló con un error: Error: No capturado (en promesa): TypeError: No se puede leer la propiedad 'Nombre' de TypeError indefinido: No se puede leer la propiedad 'Nombre' de indefinido en CompiledTemplate.proxyViewClass.View_ProductDetailsComponent0.detectChangesInternal (/AppModule/ Detalles del producto Componente/componente.ngfactory.js:106:69)
A continuación se muestra la vista:
<h2>{{product.Name}}</h2> <strong>Price: {{product.Price | currency}}</strong> <div style="background-color:aliceblue;border:hidden;border-radius:15px;"> <h4>Add to Cart</h4> <form name="myForm"> Quantity: <input type="number" [(ngModel)]="quantity" placeholder="quantity" name="quantity"/> <input type="button" (click)="AddToCart()" ng-disabled="myForm.$invalid" value="Add" class="btn btn-default" /> </form> </div>Si el campo de su product dentro del componente no está undefined , es probable que esto suceda. Para evitar esto, puede usar el operador de navegación segura (básicamente hará una verificación de la verdad):
{{product?.Name}}o haz un check si en la plantilla:
<div *ngIf="product"> {{product.Name}} </div>