【问题标题】:My ng-repeat only show the latest loop我的 ng-repeat 只显示最新的循环
【发布时间】:2018-05-20 07:14:47
【问题描述】:

我想显示数组中的所有内容,但它只显示最新的循环。以下是我的控制器功能:

/*global angular*/
var app = angular.module('statisticsApp', []).controller('myCtrl',
function ($scope, $http) {
"use strict";
return $http({
    method : "POST",
    url : "GatewayAPI.php",

}).then(function mySuccess(response) {
    $scope.records = response.data;

    var mydata,myJSON,myresult,myjava, myobj;
    var i;
    var Result; 
    var chartResultTemp = [];
    var resultType = [];

    for(i=0; i<72;i++)
    {
        //storing data
        mydata = $scope.records.data[i];

        //retrieving data
        Result = mydata.data.substring(6,9); //throw this in 

        myobj = mydata.data.substring(3,4);
        resultType = mydata.data.substring(3, 4);

        if(resultType === "A") { //selects type = a
            chartResultTemp = mydata.data.substring(6,9);
        } ;

        $scope.test2=chartResultTemp; //this one
        $scope.test3 = resultType;

        console.log(Result);
        console.log(resultType);
    }




    $scope.gotTemp = false;
    $scope.gotHumidity = false;
    $scope.getSoilMoisture = false;

});

});

这是我的 php 中的代码,我在其中列出了数组中的所有项目:

<ul>
  <li data-ng-repeat="cd in test2">{{cd}}</li>
</ul>

这是我在浏览器控制台中查看的当前结果:

从控制台日志可以看出,它只显示最新的循环。我想显示数组中的所有数据。是不是因为我错误地声明了数组。

更新:

所以我使用了$scope.test2.push(chartResultTemp),它给了我一个错误:Cannot read property 'push' of undefined。

然后,我尝试了

if(resultType === "A") { 
   chartResultTemp.push([mydata.data.substring(6,9)]);
} ;

它有效,但问题是列出的项目中有括号。

【问题讨论】:

    标签: javascript arrays angularjs


    【解决方案1】:

    你需要推送到数组

    $scope.test2.push(chartResultTemp);
    

    【讨论】:

    • 这意味着它又是一个数组,你需要另一个 ng-repeat
    【解决方案2】:

    通过使用 (=),您在每次迭代中为同一范围分配不同的值,最终保留分配给它的最终值。要存储所有值,您必须从每次迭代中创建一个数组和 push 值。

    $scope.test2 = [];
    for(let i=0; i<72; i++){
      .....
      .....
      $scope.test2.push(chartResultTemp);
      .....
      .....
    

    【讨论】:

    • 我已经尝试过您的方式,但给了我一个错误(请参阅上面的更新代码)并尝试将其推送到其他地方。但是在列出数组中的项目时它给了我括号
    猜你喜欢
    • 2016-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多