如何过滤 polymer 1.0 中的铁列表?

How to filter an iron-list in polymer 1.0?

dom-repeat 元素提供 filter 属性。

是否有类似的过滤方式iron-list

例如:给定一个人员列表,我想过滤出生在特定城市的人。

不幸的是,iron-list 不提供 filter 属性,因此没有声明性模式使之成为可能。

您可以使用 dom-repeat 的过滤器 属性 实现您自己的简单列表元素。 (随着元素继承在未来的版本中回归,您可能会扩展 iron-list)。

然而,我目前看到的最佳实践是使用计算 属性:

<template>
  <iron-list items="[[filterItems(items)]]" as="item">
    ...
  </iron-list>
</template>

<script>
Polymer({
  ...
  filterItems: function (items) {
    return items.filter(function (item) { // Array.prototype.filter
      return item.priority > 8; // Filter condition
    });
  }
});
</script>