2017-06-14 48 views
1

下面是我的AngularJs代码,其中我尝试在succussfull ProcessCriteria调用之后调用TalentPoolService.search(),但由于某些原因它未触及TalentPool.Service。我在这里做错了什么?服务方法未被触发使用。然后

 $scope.Search = function (item, SolrLabel) { 
    if (item != null) { 
     console.log('Item: ' + item.Key); 
     console.log('SolrLabel: ' + SolrLabel); 
     console.log($localStorage.message); 

     var pvarrData = new Array(); 
     pvarrData[0] = JSON.stringify($localStorage.message); 
     pvarrData[1] = item.Key; 
     pvarrData[2] = SolrLabel; 

      $http({ 
       method: 'POST', 
       url: '/api/TalentPool/ProcessCriteria', 
       data: JSON.stringify(pvarrData), 
       headers: { 'Content-Type': 'application/json' } 
      }).then(function (response) { 
       console.log('ProcessCriteria Success fired'); 
       $localStorage.message = response.data; 
       console.log(response.data); 
       return response.data; 
       }, 
        function (response) { 
         // failed 
         console.log('facet post error occured!'); 
        }).then(

          function() { 
           TalentPoolService.search().then(function successCallback(response1) { 
            $scope.talentpoolist = response1.data.model; 
            $localStorage.message = response1.data.baseCriteria; 
            console.log('TalentPoolService.search successCallback fired'); 
            setTimeout(function() { 
             LetterAvatar.transform(); 
            }, 20); 
           }, function errorCallback(response1) { 
            $scope.errors = []; 
            $scope.message = 'Unexpected Error while saving data!!' + response; 
           }) 
          } 
        ); 
    } 
} 
+0

'TalentPoolService.search()'必须包装在我认为的函数中。 – SaiUnique

+0

尝试过,但没有运气 – ShK

+0

更新与尝试一个问题。 – SaiUnique

回答

1

您必须返回链接才能工作的数据。

$http({ 
    method: 'POST', 
    url: '/api/TalentPool/ProcessCriteria', 
    data: JSON.stringify(pvarrData), 
    headers: { 
    'Content-Type': 'application/json' 
    } 
}).then(function(response) { 
    console.log('ProcessCriteria Success fired'); 
    $localStorage.message = response.data; 
    console.log(response.data); 
    return response.data; // **return here** 
    }, 
    function(response) { 
    // failed 
    console.log('facet post error occured!'); 
    }).then(

    function() { 
    TalentPoolService.search().then(function successCallback(response1) { 
     $scope.talentpoolist = response1.data.model; 
     $localStorage.message = response1.data.baseCriteria; 
     setTimeout(function() { 
     LetterAvatar.transform(); 
     }, 20); 
    }, function errorCallback(response1) { 
     $scope.errors = []; 
     $scope.message = 'Unexpected Error while saving data!!' + response; 
    }) 
    } 
); 

为什么因为,那么你正在使用的下一个方面需要一些数据的工作。所以,如果你不回报它不能。所以,必须返回数据。

+0

我现在可以在控制台上看到'TalentPoolService.search successCallback fired'消息,但它从未打中alentPoolService.search()本身。 (代码更新) – ShK

+0

您获得了成功回调。现在,你面临的错误是什么。 – SaiUnique

+0

Inside TalentPoolService.search()successCallback函数我添加了一个控制台消息“'TalentPoolService.search successCallback fired'”。现在,当我运行我的页面时,我能够看到控制台消息,但它从来没有碰到应该被TalentPoolService.search服务命中的服务器方法。 – ShK

相关问题