2016-08-10 167 views
0

我有一個$scope.event我在推送數據,當我從服務器接收數據時,我正在使用angularjs進度條,所以基於用戶交互,我想開始記錄數據,所以當數據開始記錄時,我想創建新的數組$scope.progressbarData所以我可以設置進度條的動態值。如何將數據元素同時推送到兩個數組?

ctrl.js

$scope.event = []; 
$scope.progressbarData = []; 
$scope.dynamic = 0; 
    $scope.max = 200; 
    socket.on('ditConsumer',function (data) { 
     var obj = { 
      file:$scope.filename, 
      data:data 
     } 
     $scope.event.push(data); 
     if(sendMessageFlag === true) { 
      $scope.dynamic = $scope.event.length; 
      return sendMessageToFile(obj); 

     } 
    }); 

main.html中

<div class="row"> 
     <div class="col-md-10"> 
      <uib-progressbar max="max" animate="true" value="dynamic">{{dynamic}}/{{max}}</uib-progressbar> 
     </div> 
    </div> 
+4

添加另一個Array.push()?除非我錯過了一些東西。 – Yoda

+0

我正在尋找任何其他解決方案,但現在我會用這種方法array.push。感謝您的回答 – hussain

+0

任何其他解決方案可能會掩蓋讀者的邏輯 – Yoda

回答

1

你可以只添加一個的Array.push()事件處理程序中。這是可讀的,並且在這種情況下與標準方法無關。

$scope.event = []; 
$scope.progressbarData = []; 
$scope.dynamic = 0; 
    $scope.max = 200; 
    socket.on('ditConsumer',function (data) { 
     var obj = { 
      file:$scope.filename, 
      data:data 
     } 
     $scope.event.push(data); 
     $scope.progressbarData.push(data); 
     if(sendMessageFlag === true) { 
      $scope.dynamic = $scope.event.length; 
      return sendMessageToFile(obj); 

     } 
    }); 
+1

感謝您的意義! – hussain

相關問題