From 0f3ecdc4eeb2e911abb006b2f85321ae93f16e47 Mon Sep 17 00:00:00 2001 From: aits2026 Date: Tue, 10 Mar 2026 14:39:23 +0800 Subject: [PATCH] fix(export): hide duplicate session table scrollbar --- src/pages/ExportPage.scss | 8 ++ src/pages/ExportPage.tsx | 254 +++++++++++++++++++------------------- 2 files changed, 136 insertions(+), 126 deletions(-) diff --git a/src/pages/ExportPage.scss b/src/pages/ExportPage.scss index 00730ba..596c2f8 100644 --- a/src/pages/ExportPage.scss +++ b/src/pages/ExportPage.scss @@ -1717,6 +1717,7 @@ } .table-wrap { + --contacts-native-scrollbar-compensation: 18px; --contacts-row-height: 76px; --contacts-default-visible-rows: 10; --contacts-default-list-height: calc(var(--contacts-row-height) * var(--contacts-default-visible-rows)); @@ -1740,12 +1741,19 @@ } .table-wrap { + .table-scroll-shell { + overflow: hidden; + } + .table-scroll-viewport { min-height: 0; overflow-x: auto; overflow-y: visible; scrollbar-width: none; + -ms-overflow-style: none; background: var(--bg-secondary); + padding-bottom: var(--contacts-native-scrollbar-compensation); + margin-bottom: calc(-1 * var(--contacts-native-scrollbar-compensation)); &::-webkit-scrollbar { display: none; diff --git a/src/pages/ExportPage.tsx b/src/pages/ExportPage.tsx index fae2112..2a47938 100644 --- a/src/pages/ExportPage.tsx +++ b/src/pages/ExportPage.tsx @@ -6371,137 +6371,139 @@ function ExportPage() { -
-
-
- {contactsList.length > 0 && isContactsListLoading && ( -
- - 联系人列表同步中… -
- )} +
+
+
+
+ {contactsList.length > 0 && isContactsListLoading && ( +
+ + 联系人列表同步中… +
+ )} - {hasFilteredContacts && ( -
- - - - - {contactsHeaderMainLabel} - - 总消息数 - 表情包 - 语音 - 图片 - 视频 - {shouldShowSnsColumn && ( - 朋友圈 - )} - {shouldShowMutualFriendsColumn && ( - 共同好友 - )} - - {selectedCount > 0 && ( - <> - - - + {hasFilteredContacts && ( +
+ + + + + {contactsHeaderMainLabel} + + 总消息数 + 表情包 + 语音 + 图片 + 视频 + {shouldShowSnsColumn && ( + 朋友圈 )} - + {shouldShowMutualFriendsColumn && ( + 共同好友 + )} + + {selectedCount > 0 && ( + <> + + + + )} + +
+ )} +
+ + {contactsList.length === 0 && contactsLoadIssue ? ( +
+
+
+ + {contactsLoadIssue.title} +
+

{contactsLoadIssue.message}

+

{contactsLoadIssue.reason}

+
    +
  • 可能原因1:数据库当前仍在执行高开销查询(例如导出页后台统计)。
  • +
  • 可能原因2:contact.db 数据量较大,首次查询时间过长。
  • +
  • 可能原因3:数据库连接状态异常或 IPC 调用卡住。
  • +
+
+ + + +
+ {showContactsDiagnostics && ( +
{contactsDiagnosticsText}
+ )} +
+
+ ) : isContactsListLoading && contactsList.length === 0 ? ( +
+ + 联系人加载中... +
+ ) : !hasFilteredContacts ? ( +
+ 暂无联系人 +
+ ) : ( +
+ contact.username} + fixedItemHeight={76} + itemContent={renderContactRow} + rangeChanged={handleContactsRangeChanged} + atTopStateChange={setIsContactsListAtTop} + overscan={420} + />
)}
- - {contactsList.length === 0 && contactsLoadIssue ? ( -
-
-
- - {contactsLoadIssue.title} -
-

{contactsLoadIssue.message}

-

{contactsLoadIssue.reason}

-
    -
  • 可能原因1:数据库当前仍在执行高开销查询(例如导出页后台统计)。
  • -
  • 可能原因2:contact.db 数据量较大,首次查询时间过长。
  • -
  • 可能原因3:数据库连接状态异常或 IPC 调用卡住。
  • -
-
- - - -
- {showContactsDiagnostics && ( -
{contactsDiagnosticsText}
- )} -
-
- ) : isContactsListLoading && contactsList.length === 0 ? ( -
- - 联系人加载中... -
- ) : !hasFilteredContacts ? ( -
- 暂无联系人 -
- ) : ( -
- contact.username} - fixedItemHeight={76} - itemContent={renderContactRow} - rangeChanged={handleContactsRangeChanged} - atTopStateChange={setIsContactsListAtTop} - overscan={420} - /> -
- )}