2

OPTIONSプリフライト リクエストが先行する複数の削除リクエストがあります。しかし、制御はリクエストの$q.all後に取得されます。OPTIONSこれが私のコードです:

companyMasterC.confirmDelete = function(ev, text) {
     simpleDialog.verifyDelete(ev, text).then(function() {
         companyMasterC.deletePromise = companyMasterC.deleteSelected().then(function(response) {
              companyMasterC.getCompanies();
          }, function(error) {
                 console.log(error);
          });
     });
};

companyMasterC.deleteSelected = function(){
   var promises = companyMasterC.selectedRows.map(function(selectedRow) {
       return company.delete({id:selectedRow.id});
   });
   return $q.all(promises);
};

ネットワーク タブで何が起こっているかを次に示します。最初にOPTIONSリクエストが実行され、次にGETリクエストが実行されcompanyMasterC.getCompanies(); たときに実行されるはずのDELETEリクエストが実行されます。そして、GETリクエストのDELETEリクエストが実行された後。

4

1 に答える 1

2

変化する

return company.delete({id:selectedRow.id});

return company.delete({id:selectedRow.id}).$promise;

変更されたコード:

companyMasterC.confirmDelete = function(ev, text) {
     simpleDialog.verifyDelete(ev, text).then(function() {
         companyMasterC.deletePromise = companyMasterC.deleteSelected().then(function(response) {
              companyMasterC.getCompanies();
          }, function(error) {
                 console.log(error);
          });
     });
};

companyMasterC.deleteSelected = function(){
   var promises = companyMasterC.selectedRows.map(function(selectedRow) {
       return company.delete({id:selectedRow.id}).$promise;
   });
   return $q.all(promises);
};
于 2016-03-11T06:18:35.940 に答える