2017-09-05 5 views
1

ここで間違っていることを誰かが助けてくれますか?私は$ httpサービスを呼び出して、その中に.xlsxファイルをアップロードしています。私は$ scope変数に応答データを割り当てていますが、htmlでバインドしようとしていますが、バインディングは起こっていません。どんな提案も事前に大変感謝しています。

ここはコードサンプルです。

fileUpload.uploadFile(file) 
    .then(function(response) { 
      console.log('File Uploaded Successfully'); 
      if (response.status == 201) { 
       if(response.data!=undefined) { 
        var _data = angular.fromJson(response.data); 
         $scope.batchUploadDetails = _data; 
         console.log($scope.batchUploadDetails); 
        } 
       } 
     }, function(response) { 
     $scope.batchUploadDetails = {}; 
     console.log('File Uploading Failed!'); 
}); 

HTMLテンプレート

<div class="col-xs-12 no_pad borderAll padding20 margTop20 mb20" > 

    <div class="col-lg-2 col-md-2 col-sm-3 col-xs-12 no_pad"> 
     <label class="col-xs-12 no_pad labelNew">Employee count</label><span 
        class="col-xs-12 no_pad">{{ batchUploadDetails.employeeCount }}</span> 
    </div> 

    <div class="col-lg-2 col-md-2 col-sm-3 col-xs-12 no_pad"> 
     <label class="col-xs-12 no_pad labelNew">Company code</label><span 
        class="col-xs-12 no_pad">{{ batchUploadDetails.companyCode }}</span> 
    </div> 

</div> 
+0

どのような$ scope変数についてお話していますか? _データ? – Sletheren

+0

私は$ scope.batchUploadDetailsについて話しています –

答えて

0

あなたは$を使用$トリガーサイクルを消化するために適用することができます。

fileUpload.uploadFile(file) 
    .then(function(response) { 
      console.log('File Uploaded Successfully'); 
      if (response.status == 201) { 
       if(response.data!=undefined) { 
        var _data = angular.fromJson(response.data); 
         $scope.batchUploadDetails = _data; 
         setTimeout(function(){ 
          $scope.$apply();// you can use $timeout as well. Here I used settimeout to avoid $digest already in progress error 
         },0) 
         console.log($scope.batchUploadDetails); 
        } 
       } 
     }, function(response) { 
     $scope.batchUploadDetails = {}; 
     console.log('File Uploading Failed!'); 
}); 
0

$ apply内でスコープ変数を変更して、変更を有効にする必要があります。

最終的に$ applyサービスを呼び出す$ timeoutサービスを使用することもできます。

関連する問題