Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Связывание Table & Paginator через DataSource #133

Closed
2 of 7 tasks
AleksandrSibiakov opened this issue Apr 6, 2023 · 3 comments
Closed
2 of 7 tasks
Assignees
Labels
state:ready ready for release (pass tested)
Milestone

Comments

@AleksandrSibiakov
Copy link
Contributor

Библиотека

  • @prizm-ui/core
  • @prizm-ui/components
  • @prizm-ui/install
  • @prizm-ui/icons
  • @prizm-ui/flag-icons
  • @prizm-ui/theme
  • @prizm-ui/charts

Компонент

PrizmTable

Проблема

Рассматривается случай, когда все данные доступны на клиенте

Есть необходимость отображать пагинацию и выполнять сортировку некоторого набора данных.

Сейчас таблица работает таким образом, что отрисовывается весь набор отсортированных данных.
Но при выполнении пагинации, нам необходимо отрисовать только часть данных, которые должны быть отсортированы заранее.

Таким образом, чтобы достичь желаемого результата, нужно "доставать" скрытый (приватный) объект PrizmTableSorterService (например так @ViewChild(PrizmTable) table -> table['sorterService']) и выполнять сортировку заранее самим, а после применять пагинацию (самим) на основе состояния PrizmPaginator, и отдавать в таблицу полученное значение.

Предложение

По аналогии с Material создать класс DataSource который поможет обрабатывать цепочку data -> [filter] -> sort -> pagination.

Расширить возможные значения для Table.data инпута как T[] | DataSource<T>.

@AleksandrSibiakov
Copy link
Contributor Author

Создал МР - ссылка

@ZurabDev ZurabDev added this to the 1.0.0-beta.29 milestone Apr 7, 2023
@ZurabDev ZurabDev added the state:ready ready for release (pass tested) label Apr 7, 2023
@ZurabDev
Copy link
Contributor

Слито. Просьба проверить и закрыть тикет

@AleksandrSibiakov
Copy link
Contributor Author

Полет нормальный.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
state:ready ready for release (pass tested)
Projects
None yet
Development

No branches or pull requests

2 participants