From 698832b3d22f02ae75f255e6e4af639264d5c36c Mon Sep 17 00:00:00 2001 From: MARIO <135943045+HIITMEMARIO@users.noreply.github.com> Date: Thu, 1 Aug 2024 19:27:15 +0900 Subject: [PATCH] =?UTF-8?q?fix:=EC=82=AC=EC=9A=A9=EC=9E=90=20=EC=A4=91?= =?UTF-8?q?=EB=B3=B5=EB=90=98=EC=A7=80=20=EC=95=8A=EA=B2=8C=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FilteredAuthors/FilteredAuthors.tsx | 32 ++++++++++++------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/packages/view/src/components/FilteredAuthors/FilteredAuthors.tsx b/packages/view/src/components/FilteredAuthors/FilteredAuthors.tsx index 288fcae7..5c094bf8 100644 --- a/packages/view/src/components/FilteredAuthors/FilteredAuthors.tsx +++ b/packages/view/src/components/FilteredAuthors/FilteredAuthors.tsx @@ -10,25 +10,35 @@ const FilteredAuthors = () => { const authSrcMap = usePreLoadAuthorImg(); const selectedClusters = getInitData(selectedData); const filteredSelectedData = selectedClusters.reverse().slice(0, 9); - const selectedClustersLength = selectedClusters.slice(9); + + const selectedClustersLength = selectedClusters.length - filteredSelectedData.length; + + // 이미 선택된 사용자를 관리 + const addedAuthors = new Set(); return (
{authSrcMap && filteredSelectedData.reverse().map((selectedCluster) => { return selectedCluster.summary.authorNames.map((authorArray: string[]) => { - return authorArray.map((authorName: string) => ( - - )); + return authorArray.map((authorName: string) => { + // 이미 추가된 사용자인지 확인 후 추가되지 않은 경우에만 추가하고 Set에 이름을 저장 + if (!addedAuthors.has(authorName)) { + addedAuthors.add(authorName); + return ( + + ); + } + // 이미 추가된 사용자인 경우 null 반환 + return null; + }); }); })} -
- {selectedClusters.length > 9 ? `+ ${selectedClustersLength.length} more` : null} -
+
{selectedClusters.length > 9 ? `+ ${selectedClustersLength} more` : null}
); };