所以,我有一个名为frutas的JSON,如下所示。 AngularJS通过水果名称自动订购,但我需要按“订单”排序。 当我尝试订购时:
ng-repeat="fruta in frutas | orderBy:'order'"
我没有结果。为什么?我该如何解决这个问题?
{
cacau: {cod: 2244, order: 3},
abacaxi: {cod: 18967, order: 2},
bacuri: {cod: 124, order: 1},
}
答案 0 :(得分:1)
orderBy
期望一个数组可以运行。 https://docs.angularjs.org/api/ng/filter/orderBy
如果
{
cacau: {cod: 2244, order: 3},
abacaxi: {cod: 18967, order: 2},
bacuri: {cod: 124, order: 1},
}
是frutas
包含的内容,这就是orderBy
无效的原因。请以这种方式修改数据为数组,因为此刻是一个对象。
您可以测试数据是否为数组 Array.isArray()方法。