【问题标题】:Angular: how can i filter nested object properties?Angular:如何过滤嵌套对象属性?
【发布时间】:2015-05-23 10:25:52
【问题描述】:

现在解决了 Plunker: http://plnkr.co/edit/oimkGE83UgPX22E7NXl2?p=preview

当你有这样嵌套的对象时:

$scope.customer = {
  roomsclean1: {
    "price": 27,
    "title": "Room(s) to clean",
    "area": "6"
  },
  roomsprotect1: {
    "price": 62,
    "title": "Room(s) to protect",
    "area": "0"
  }

}

迭代每个项目并根据天气返回每个属性的最佳方法是什么,嵌套的关键区域是否不为零?

显然{{customer | filter:{area : "!0"} }} 之类的东西不起作用。

【问题讨论】:

  • 请考虑编辑您的问题以删除其中的“答案”部分。如果您的问题得到了答案,请鼓励将其作为答案发布,而不是将其编辑到您的问题中。

标签: arrays angularjs object


【解决方案1】:

filter 接受过滤方法作为参数。

你应该这样做:{{customer | filter:myFilter }}

在你的控制器中:

$scope.myFilter = function(element) {
    return element.area !== "0";
}

不过你的结构很奇怪。您正在使用一个显然应该使用简单列表的对象。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 1970-01-01
    • 1970-01-01
    • 2021-09-27
    • 1970-01-01
    • 1970-01-01
    • 2018-01-16
    相关资源
    最近更新 更多