2017-10-21 51 views
0

erreur de type quand je mets à jour la table de crud après avoir rafraîchi la page dans AngularJS

<script src="js/angular.min.js"></script> 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular-route.js"></script> 

Quand je mets à jour les données stockées directement après avoir rafraîchi la page, je reçois une erreur dans la console comme TypeError : Impossible de définir la propriété 'myid' de undefined à Object.vm.edit (controller.js: 70), la table ne se met pas à jour de cette façon, mais elle est mise à jour si vous ajoutez une ligne avant de la mettre à jour. Quelqu'un peut-il m'aider à résoudre ce problème? Mon plunk

Répondre

0

Votre erreur indique que les données n'existe pas sur le contrôleur, vous avez juste besoin d'initialiser vm.data en haut de votre contrôleur:

vm.data = {}; 

Voici plnkr: http://plnkr.co/edit/mnRGSmEk0q9N2dSazEHL?p=preview

une autre solution serait de créer un objet de données lorsque vous ajouter:

vm.data = { 
     myid: id, 
     fname: vm.arr[i].fname, 
     lname: vm.arr[i].lname, 
     classs: vm.arr[i].classs, 
     age: vm.arr[i].age, 
     fees: vm.arr[i].fees, 
    }; 

est ici plnkr: http://plnkr.co/edit/TZmgPz2h02peBYaF0uyV?p=preview

+0

merci beaucoup. :) –

+0

Aucun problème, vous pourriez accepter/upvote réponse si elle était utile, vous pourriez faire de même sur vos autres questions sur le débordement de la pile aussi bien. – pegla

+0

Je l'ai upvoted, mais en raison de moins de réputation, il n'a pas été soumis. –