angular smart-table, st-sort 动态列

angular smart-table, st-sort dynamic columns

我使用了 2 个选项卡,第一个效果很好,但第二个效果不佳。我在使用 smart table 对数据进行排序时遇到问题,全局搜索对这两种情况都适用。

$scope.reports1 = [{fieldsName:['number1','number2','number3'],
                records:[{number1:10,number2:8,number3:40},
                         {number1:1,number2:4,number3:55},
                         {number1:8,number2:10,number3:35},
                         {number1:8,number2:11,number3:44}]}];


$scope.reports2 = [{fieldsName:['number1','number2','number3'],
                records:[{dyn_array:{number1:10,number2:8,number3:40}},
                         {dyn_array:{number1:1,number2:4,number3:55}},
                         {dyn_array:{number1:8,number2:10,number3:35}},
                         {dyn_array:{number1:8,number2:11,number3:44}}
                  ]}];

这里是废话:http://plnkr.co/edit/AGQqugefnv4RzYTxH8ua?p=preview

我的列是动态的,这就是为什么我需要创建一个新的 dyn_array 因为我将使用其他我不想显示的静态列,例如 ID。

一个想法?

感谢您的帮助

lorenzofox3 在 github 上的回复: 问题是你的数据结构与你显示的不匹配 一个项目(行)是

{dyn_array:{number1:"foo",number2:"bar"}}

而您要求按 "number1" 排序,即 属性 在您的行中不存在。

您必须专门提供一个 getter 函数来告诉 orderBy 过滤器您要对哪个嵌套 属性 进行排序。

查看 plunker : http://plnkr.co/edit/ojbbZK?p=preview