amalia/19-mei-26 #50

Merged
amaliadwiy merged 8 commits from amalia/19-mei-26 into join 2026-05-19 17:18:43 +08:00
14 changed files with 640 additions and 616 deletions
Showing only changes of commit 6d0203cc7d - Show all commits

View File

@@ -11,7 +11,7 @@ import { useTheme } from "@/providers/ThemeProvider";
import { MaterialIcons } from "@expo/vector-icons";
import { useInfiniteQuery } from "@tanstack/react-query";
import { router } from "expo-router";
import { useEffect, useMemo, useState } from "react";
import { useEffect, useMemo, useRef, useState } from "react";
import { Pressable, RefreshControl, View, VirtualizedList } from "react-native";
import { useSelector } from "react-redux";
@@ -27,6 +27,7 @@ export default function Announcement() {
const { colors } = useTheme();
const [search, setSearch] = useState('')
const update = useSelector((state: any) => state.announcementUpdate)
const isFirstRender = useRef(true)
const { visible: guideVisible, dismiss: dismissGuide } = useGuide('announcement')
const arrSkeleton = Array.from({ length: 5 }, (_, i) => i)
@@ -61,7 +62,10 @@ export default function Announcement() {
},
})
useEffect(() => { refetch() }, [update, refetch])
useEffect(() => {
if (isFirstRender.current) { isFirstRender.current = false; return }
refetch()
}, [update])
const flattenedData = useMemo(() => data?.pages.flat() || [], [data])