Skip to content

Состояние таблицы

Для сохраняемой пользовательской настройки задайте стабильный 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.

Что сохраняется

СегментСодержимое
paginationpageIndex, 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.