javascriptangularjslocal-storagecrudng-storage

Type Error when I am updating crud table after refreshing the page in AngularJS


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

When I am updating the stored data directly after refreshing the page, I am getting some error in console like TypeError: Cannot set property 'myid' of undefined at Object.vm.edit (controller.js:70), table is not updating in that way, but it gets updated if you add a row first and then update it. Can anyone help me how to fix it ? My plunk


Solution

  • Your error says that data doesn't exist on controller, so you just need to initialize vm.data at the top of your controller:

    vm.data = {};
    

    Here's plnkr: http://plnkr.co/edit/mnRGSmEk0q9N2dSazEHL?p=preview

    Another solution would be to create data object when you're adding it:

    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,
        };
    

    Here's plnkr: http://plnkr.co/edit/TZmgPz2h02peBYaF0uyV?p=preview