diff --git a/lib/avatar.js b/lib/avatar.js index 38b11a5..c3ced11 100644 --- a/lib/avatar.js +++ b/lib/avatar.js @@ -32,19 +32,21 @@ export const getAvatarInfoList = async (api, origin = false) => { // 获取角色基础信息列表 const avatarBaseList = await getAvatarBasicList(api, origin); if (!avatarBaseList) return null; - // 获取角色详细信息 - const avatarInfoList = await api.getFinalData('zzzAvatarInfo', { - query: { - id_list: avatarBaseList.map(item => item.id), - }, - }); - if (!avatarInfoList) return null; + // 获取角色详细信息列表 + const avatarInfoList = await Promise.all( + avatarBaseList.map(item => + api.getFinalData('zzzAvatarInfo', { + query: { + id_list: [item.id], + }, + }) + ) + ).then(data => data.map(item => item.avatar_list[0])); + if (!avatarInfoList?.length) return null; // 是否返回原始数据 - if (origin) return avatarInfoList.avatar_list; + if (origin) return avatarInfoList; // 格式化数据 - const result = avatarInfoList.avatar_list.map( - item => new ZZZAvatarInfo(item) - ); + const result = avatarInfoList.map(item => new ZZZAvatarInfo(item)); return result; };