You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailchat/client/shared/hooks/model/useUserInfoList.ts

17 lines
469 B
TypeScript

import { getCachedUserInfo } from '../../cache/cache';
import type { UserBaseInfo } from '../../model/user';
import { useAsync } from '../useAsync';
/**
* 用户信息列表
*/
export function useUserInfoList(userIds: string[] = []): UserBaseInfo[] {
const { value: userInfoList = [] } = useAsync(async () => {
const users = await Promise.all(userIds.map((id) => getCachedUserInfo(id)));
return users;
}, [userIds.join(',')]);
return userInfoList;
}