简体   繁体   English

如何将数据元素同时推送到两个数组?

[英]How can i push data elements to two array at same time?

I have a $scope.event where i am pushing data when i received from a server , I am working with the angularjs progress-bar so based on user interaction i want to start recording data so when data start recording i want to create new array like $scope.progressbarData so i can set dynamic value of the progressbar. 我有一个$scope.event ,当我从服务器收到消息时我正在推送数据,我正在使用angularjs进度栏,因此基于用户交互我想开始记录数据,所以当数据开始记录时我想创建新的数组像$scope.progressbarData这样,我就可以设置progressbar的动态值。

ctrl.js 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 main.html

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

You can just add another Array.push() inside your event handler. 您可以在事件处理程序中添加另一个Array.push()。 This is readable and is nothing short of the standard approach in this situation. 在这种情况下,这是可读的,并且与标准方法一样。

$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);

        }
    });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM