useGMFYBadges
import { useGMFYBadges } from 'gmfy-sdk'
Мотивация
Если необходимо отрисовать свой UI или просто обработать данные, можно воспользоваться хуком useGMFYBadges
. Хук позволяет получить список бейджей пользователя с userId
. В случае, если был передан updateInterval
в конфиг компонента провайдера, будет возвращать новые значения раз в updateInterval
мс. Возвращает список бейджей и текущий статус запроса
Типизация
type Badge = {
userId: string;
badgeId: string;
clientId: string;
acquisitionDate: string;
metaInfo: Record<string, any>;
name: string;
description?: string;
permanent: boolean;
}
type Status = 'initial' | | 'done' | 'fail'
useGMFYBadges(): { badges: <Array<Badge>> | null; status: Status }
Badge
userId
- ID пользователя, кому принадлежит бейджbadgeId
- ID бейджаclientId
- ID клиента, кому принадлежит бейджacquisitionDate
- дата получения бейджаmetaInfo
- пользовательская информацияname
- название бейджаdescription
- описание бейджаpermanent
- флаг обозначающий постоянный бейдж или временный
Status
initial
- начальный статус, запрос ещё не был отправленdone
- запрос прошёл успешноfail
- во время выполнения запроса возникла ошибка
Использование
import { useGMFYBadges } from 'gmfy-sdk';
const App = () => {
const { badges, status } = useGMFYBadges();
if (status !== 'done') {
return <Preloader />;
}
return badges.map((badge) => <YourBadgeComponent key={badge.badgeId} {...badge} />);
};