Je veux attribuer une valeur à une variable de la réponse HTTP. Dans la connexion HTTP de console montre la valeur mais la variable indique non définie. La variable est un type de classe.
commandez.model.ts strong> p> commander-item.model.ts OrderId:10;
OrderNo :"161235";
PMethod :"Cash";
GTotal :22.42;
CustomerId :5;
OrderItems:[
{orderItemID: 5, quantity: 5, itemID: 9, name: "Onion Rings", price: 2.99, â¦}
{orderItemID: 6, quantity: 3, itemID: 11, name: "Sweet Potato Fries", price: 2.49, â¦}
];
3 Réponses :
Vous devez créer un dans vos ordreservice.ts p> définir code> et obtenir la méthode code> dans votre classe de service. getOrderDetail(id:number)
{
this.orderService.getSingleOrder(id).subscribe((res: Order)=>{
console.log(res);
this.orderService.setFormData(res);
console.log(this.orderService.getFormData());
}
error =>
{
console.log(error);
});
}
J'ai suivi votre suggestion, mais le résultat n'est toujours pas défini.
Pouvez-vous essayer cette classe en service formdata: tout;
Modifiez votre interface en: } p> votre interface de commande et "réponse" de type inadéquation. p> p> p>
Merci. Ça marche. Mais je ne comprends pas d'où vient le nom de champ. Dans ma base de données, le champ est identique à mon interface.
Vous obtenez non défini code> car dans la réponse, vous obtenez des "commandes" et que vous accédez à des "ordonnances". P>
Quel est le résultat de
console.log (this.orderservice.formdata) code>?On dirait que vous utilisez une forme de modèle entraînée. De plus, étant donné que vous avez un modèle de données en place, vous devez envisager d'utiliser une forme réactive à la place. Avez-vous un échantillon Stackblitz pour travailler?
Résultat de la console.log (ce.orderservice.formdata) est indéfini. @PrashantPimpale
No.Siddajmera
@Skabidahmed, pouvez-vous en créer un?
Regardez vos journaux. Votre champ est en fait nommé
orderid code>, mais vous essayez d'accéder àorderid code>. JavaScript est sensible à la casse. Respectez les conventions de nommage partout et tout sera plus facile. Voter à fermer pour la faute de frappe.@Jbnizet a accepté avec vous, mais pour cela, il doit imprimer la valeur de formdata? Comme OP a dit
(en commentaire) code>: console.log (this.orderservice.formdata) est indéfini. I>Non, lisez le code. Le code est
console.log (this.orderservice.formdata.orderid); code>. Donc, ce qui est sous-fini estthis.orderservice.formdata.orderid code>.@Skabidahmed, je vous suggérerais de créer un dans ce cas et de la partager à l'autre de sorte que quelqu'un puisse aider. Vous finiriez de courir dans des cercles sinon.
Je ne comprends pas d'où vient le nom "ordonnancier". Dans mon nom de champ de base de données est "ORDERID". Nizet @JB
Si je change de champ de classe modèle selon le journal, cela fonctionne. @Jbnizet