TableContainer в библиотеке Carbon Components Svelte
представляет собой обёртку для таблиц, обеспечивающую структурированное
и адаптивное отображение данных. Он используется совместно с компонентом
DataTable для управления интерфейсом таблицы, обеспечивая
корректную работу прокрутки, адаптивной ширины колонок и стилей.
sm, md или lg.Пример использования:
В этом примере TableContainer оборачивает
DataTable, позволяя корректно отображать таблицу с
фиксированным заголовком и прокручиваемой областью данных.
TableToolbar обеспечивает панель инструментов для
работы с таблицей: поиск, фильтры, экспорт данных и действия над
выбранными элементами. Он интегрируется с DataTable и
управляет состоянием инструментов через события и привязку данных.
TableToolbar состоит из нескольких ключевых компонентов:
Пример полной структуры:
Экспорт
Удалить выбранные
Дублировать выбранные
TableToolbar обычно размещается внутри TableContainer, позволяя объединить визуальное оформление и функциональность:
Добавить проект
В этом примере TableToolbar обеспечивает интерактивные
элементы управления над таблицей, а TableContainer
сохраняет корректное отображение и структуру.
TableContainer
автоматически обрабатывает переполнение данных, обеспечивая
горизонтальную и вертикальную прокрутку.TableToolbarSearch
связывается с состоянием DataTable, позволяя динамически
фильтровать строки.TableToolbarMenu могут работать только с выбранными
строками таблицы, используя события on:select и
on:deselect из DataTable.scrollable={true} в
TableContainer для сохранения удобства просмотра.TableToolbarSearch с состоянием rows, чтобы
фильтрация обновляла данные корректно.TableToolbarMenu стоит выстраивать так,
чтобы оно отображалось только при наличии выделенных строк, используя
реактивные проверки состояния selectedRows.TableToolbarAction и TableToolbarMenu для
разных категорий операций, обеспечивая структурированное
управление.
applyFilter('active')}>Активные
applyFilter('completed')}>Завершенные
deleteSelected(selectedRows)}>Удалить
exportSelected(selectedRows)}>Экспорт
Эти практики позволяют строить мощные и гибкие таблицы с богатой интерактивностью, сохраняя согласованность интерфейса и соответствие стилю Carbon Design System.