Полимер 1.x: Как отфильтровать железо-таблицу данных?
Как мне добавить filter
приписывать <iron-data-table
? (Пожалуйста, опубликуйте демонстрационную версию.)
Я раздвоил этот удар. Затем я попытался добавить фильтр, добавив следующую строку:
<iron-data-table
...
filter="['item.user.name.first.length', '< 5']">
Который сломал планк. Вот новый (теперь сломанный) шлепок.
Документация здесь описывает filter
атрибут следующим образом:
filter
Массив, содержащий пары путь / значение фильтра, которые используются для фильтрации элементов.
Но ему не хватает примера того, как его использовать.
Как мне добавить filter
приписывать <iron-data-table
? (Пожалуйста, опубликуйте демонстрационную версию.)
1 ответ
Это не очень хорошо документированная функция:
Обычно вы бы использовать filter-by
а также filter-value
свойства в <data-table-column>
элементы, но вы также можете получить доступ к filter
собственность напрямую.
Когда дело доходит до фильтрации items
В источнике данных существует только "содержащий" вид фильтрации. Таким образом, вы в значительной степени не можете выполнять фильтрацию по длине строки, как в вашем Plnkr с ними. Для большей пользовательской функциональности фильтрации вам нужно использовать функцию dataSource
где вы можете делать все что угодно, используя фильтры, предоставленные в качестве аргументов для функции источника данных.
В любом случае, если вы все еще хотите получить доступ filter
непосредственно и, например, предоставить значение фильтрации по умолчанию, необходимо установить значение в виде массива объектов, которые имеют path
а также filter
имущество:
this.filter = [{path: 'user.name.first', filter: 'donna'}];
Вот пример: http://plnkr.co/edit/KIefwLNHeinkOgERWOvZ?p=preview