import { useCallback } from 'react'; import Taro, { usePullDownRefresh } from '@tarojs/taro'; export function usePageRefresh(onRefresh: () => Promise) { usePullDownRefresh(async () => { try { await onRefresh(); } finally { Taro.stopPullDownRefresh(); } }); const manualRefresh = useCallback(async () => { Taro.startPullDownRefresh(); try { await onRefresh(); } finally { Taro.stopPullDownRefresh(); } }, [onRefresh]); return { manualRefresh }; }