【问题标题】:Angular ng-repeat complex table (array of arrays)Angular ng-repeat 复杂表(数组数组)
【发布时间】:2014-02-07 21:48:23
【问题描述】:

我是新的 Angular 开发人员,需要 ng-repeat 方面的帮助。我有一些复杂的 json,我想在表格 (<table>) 或有序列表 (<ol>) 中打印。

JSON

{
    "arrays": [
        [
            [1,2,3,4],
            [2,3,4,5],
            [3,4,5,6]
        ],
        [
            [1,2],
            [2,3],
            [4,5] 
        ] 
    ]
}

所以,我有一个包含 n 个数组(在本例中为 2)的数组,并且每个 n 个数组包含相同数量(在本例中为 3 个)的数字数组。 n 数组部分的每个数字数组也包含相同的数字(数字数组的第一部分大小为 4,第二部分数字数组的大小为 2)

现在我需要类似的东西

#  |   Numbers
---------------------------------------
1  |   1     2    3    4    :    1    2
2  |   2     3    4    5    :    2    3
3  |   3     4    5    6    :    3    4

1.    1    2    3    4    :    1    2
2.    2    3    4    5    :    2    3
3.    3    4    5    6    :    3    4

【问题讨论】:

    标签: json angularjs angularjs-directive angularjs-ng-repeat ng-repeat


    【解决方案1】:

    向控制器添加一个方法来为您完成工作。

    控制器

    $scope.arrays = [
        [
            [1,2,3,4],
            [2,3,4,5],
            [3,4,5,6]
        ],
        [
            [1,2],
            [2,3],
            [4,5] 
        ] 
    ];
    
    $scope.getRows = function () {
      var rows = [], i = 0;
    
      for (; i < $scope.arrays[0].length; i++) {
        rows.push($scope.arrays[0][i].concat(':', $scope.arrays[1][i]));
      } 
    
      return rows;
    };
    

    查看

    {{ getRows() | json }}
    

    【讨论】:

    • 即使我从 getRows 函数重新运行数组并使用 {{getRows()}} 打印也没有任何反应......任何解决方案
    • 不,但我已经弄清楚了。我的变量中有 json,所以我必须访问像 $scope.arrays.arrays[0] 这样的数组。它也已打印在表格中,但除此之外我收到错误 Error: [$rootScope:infdig] ...stackoverflow.com/questions/19369406/… ...您现在如何避免该范围功能?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-10
    • 1970-01-01
    • 1970-01-01
    • 2017-08-11
    • 1970-01-01
    • 2015-10-23
    • 1970-01-01
    相关资源
    最近更新 更多