完成管理员user-list
This commit is contained in:
32
tone-page-web/hooks/admin/user/use-user-list.ts
Normal file
32
tone-page-web/hooks/admin/user/use-user-list.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
"use client"
|
||||
|
||||
import { list, UserListParams, UserListResponse } from '@/lib/api/admin/user'
|
||||
import { ApiError } from '@/lib/api/fetcher'
|
||||
import { toast } from 'sonner'
|
||||
import useSWR from 'swr'
|
||||
|
||||
export function useUserList(params?: UserListParams) {
|
||||
const { data, error, isLoading, mutate } = useSWR<UserListResponse>(
|
||||
['/api/admin/user', params],
|
||||
() => list(params),
|
||||
{
|
||||
onError: (err) => {
|
||||
if (err instanceof ApiError) {
|
||||
toast.error(err.message)
|
||||
} else {
|
||||
toast.error('请求失败')
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
return {
|
||||
users: data?.items ?? [],
|
||||
total: data?.total ?? 0,
|
||||
page: data?.page ?? 1,
|
||||
pageSize: data?.pageSize ?? 20,
|
||||
isLoading,
|
||||
error,
|
||||
mutate,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user