Skip to content

Commit 20dd445

Browse files
committed
fix: analyze activity tab data fetch
Signed-off-by: Innei <tukon479@gmail.com>
1 parent 0b66dad commit 20dd445

2 files changed

Lines changed: 24 additions & 6 deletions

File tree

src/api/activity.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ export interface ReadingRankItem {
4848
export interface GetActivityParams {
4949
page?: number
5050
size?: number
51+
type?: number
5152
before?: string
5253
after?: string
5354
}

src/views/analyze/components/guest-activity.tsx

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -75,12 +75,14 @@ const mapDataToCollection = <T extends keyof Omit<ObjectsCollection, 'all'>>(
7575
export const GuestActivity = defineComponent({
7676
setup() {
7777
const tabValue = ref(ActivityType.Like)
78+
const listRef = ref<HTMLElement>()
7879

7980
const { data, pager, fetchDataFn } = useDataTableFetch(
8081
(list, pager) => async (page, size) => {
8182
const res = await activityApi.getList({
8283
page: typeof page === 'number' ? page : undefined,
8384
size,
85+
type: tabValue.value,
8486
})
8587

8688
list.value = res.data
@@ -113,7 +115,12 @@ export const GuestActivity = defineComponent({
113115
<NTabs
114116
onUpdateValue={(value) => {
115117
tabValue.value = value
116-
fetchDataFn()
118+
const el = listRef.value
119+
if (el) el.style.minHeight = `${el.offsetHeight}px`
120+
data.value = []
121+
fetchDataFn().finally(() => {
122+
if (el) el.style.minHeight = ''
123+
})
117124
}}
118125
value={tabValue.value}
119126
type="line"
@@ -126,11 +133,21 @@ export const GuestActivity = defineComponent({
126133
</NTabPane>
127134
</NTabs>
128135

129-
{tabValue.value === ActivityType.Like ? (
130-
<LikeActivityList data={data} pager={pager} onFetch={fetchDataFn} />
131-
) : (
132-
<ReadDurationList data={data} pager={pager} onFetch={fetchDataFn} />
133-
)}
136+
<div ref={listRef}>
137+
{tabValue.value === ActivityType.Like ? (
138+
<LikeActivityList
139+
data={data}
140+
pager={pager}
141+
onFetch={fetchDataFn}
142+
/>
143+
) : (
144+
<ReadDurationList
145+
data={data}
146+
pager={pager}
147+
onFetch={fetchDataFn}
148+
/>
149+
)}
150+
</div>
134151
</>
135152
)
136153
}

0 commit comments

Comments
 (0)