Тема
Состояние таблицы
Для сохраняемой пользовательской настройки задайте стабильный id:
vue
<Table
id="orders-main"
:rows="rows"
default-sort="createdAt:desc"
default-hidden="internalNote"
default-pin="number:left"
>
<!-- columns -->
</Table>Если runtime предоставляет state controller, адаптер хранит данные по ключу этого экземпляра Table.
Что сохраняется
| Сегмент | Содержимое |
|---|---|
pagination | pageIndex, pageSize |
sort | Колонки и направления |
visibility | Видимость колонок |
pin | Закрепление слева и справа |
order | Порядок колонок |
sizing | Пользовательские размеры |
Selection и активная edit session не сохраняются. Они принадлежат только смонтированному экземпляру.
Authored defaults и пользовательское состояние
default-sort, default-hidden, default-pin, порядок Source и Column.width применяются, когда сохранённого состояния ещё нет или соответствующий сегмент сброшен. Сохранённая настройка пользователя имеет приоритет.
При изменении списка колонок runtime согласует состояние с Source:
- удаляет неизвестные ключи;
- сохраняет порядок известных колонок;
- добавляет новые колонки;
- отбрасывает sort/pin для больше не существующих колонок.
Identity экземпляра
Не используйте одинаковый id для двух разных одновременно смонтированных таблиц. Их состояния начнут конкурировать. Если id не задан, Events всё равно получают runtime-generated tableId, но стабильное persistence между новыми mount не гарантируется.
Начальная гидратация не публикует Events. События появляются только после реального runtime-изменения или выполнения Table Action.