Angular $过滤器,用于在JSON响应中的数组中进行深度过滤

时间:2016-01-25 19:51:05

标签: javascript angularjs json

我想过滤对象结构有点复杂的对象。我正在寻找一种深度过滤,其中angular $ filter对数组内的元素起作用:

[
  {
    "schoolId": 12345,
    "schoolName": "ZXCVB",
    "classes": [
      {
        "classId": "C1",
        "students": 50
      },
      {
        "classId": "C2",
        "students": 100
      }
    ]
  },

  {
    "schoolId": 98765,
    "schoolName": "QWERTY",
    "classes": [
      {
        "classId": "C1",
        "students": 100
      },
      {
        "classId": "C2",
        "students": 50
      }
    ]
  }
]



(这是一系列的学校。每所学校都有各种班级,班级有Ids) 在这里,我正在寻求帮助的是如何过滤classId,以便它返回我的学校对象。

2 个答案:

答案 0 :(得分:1)

您应该使用custom filter,定义自己的过滤器功能。 示例:

template < typename T >
void List<T>::PopBack()
{
  if (Empty())      {
    std::cerr << "** List error: PopBack() called on empty list\n";
    return;
  }

  delete last_; // No reason for oldLink - just delete right away
                // as you will not dereference last_ until it has
                // a new value

  if (first_ == last_)
  {
    first_ = last_ = nullptr;
  }
  else
  {
    Link *currLink = GetPred(last_);
    last_ = currLink;
    last_->next_ = nullptr;
  }    
}

住: http://jsfiddle.net/87yod9bf/2/

答案 1 :(得分:1)

可以使用 topDir=$(tar -xvzf $fname | sed "s|/.*$||" | uniq) [ $(wc -w <<< $topDir) == 1 ] || exit 1 echo topDir=$topDir filter

完成
some

如果您想将其设置为filter for angular,则取决于您。