From 1751929f87ee4ee2ff1354ed71cab3c16fb3fbeb Mon Sep 17 00:00:00 2001 From: pa Date: Sun, 8 Feb 2026 22:35:17 +0900 Subject: [PATCH] fix feed collapsing due to unstable row IDs --- src/views/Feed/Feed.vue | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/views/Feed/Feed.vue b/src/views/Feed/Feed.vue index 402255ca..c758a834 100644 --- a/src/views/Feed/Feed.vue +++ b/src/views/Feed/Feed.vue @@ -77,13 +77,26 @@ feedTable.value.pageSizeLinked ? appearanceSettingsStore.tablePageSize : feedTable.value.pageSize ); + function getFeedRowId(row) { + if (row?.id != null) return `id:${row.id}`; + if (row?.rowId != null) return `row:${row.rowId}`; + + const type = row?.type ?? ''; + const createdAt = row?.created_at ?? row?.createdAt ?? ''; + const userId = row?.userId ?? row?.senderUserId ?? ''; + const location = row?.location ?? row?.details?.location ?? ''; + const message = row?.message ?? ''; + + return `${type}:${createdAt}:${userId}:${location}:${message}`; + } + const { table, pagination } = useVrcxVueTable({ get data() { return feedTableData.value; }, persistKey: 'feed', columns: baseColumns, - getRowId: (row, index) => `${row.type}:${row.created_at ?? ''}:${row.rowId ?? index}`, + getRowId: getFeedRowId, enableExpanded: true, getRowCanExpand: () => true, initialSorting: [], @@ -91,6 +104,9 @@ initialPagination: { pageIndex: 0, pageSize: pageSize.value + }, + tableOptions: { + autoResetExpanded: false } });