[오류 처리]

- 혹시 모를 남은 추천 수정한 파일들에 대한 수정.
 - 없을때는 빈배열이나 기초값으로 가도록 수정.
This commit is contained in:
junghoon86.park
2025-11-11 15:29:38 +09:00
parent 25fee0bfb5
commit 8fc492eaf8
2 changed files with 53 additions and 90 deletions

View File

@@ -85,30 +85,37 @@ const BestSeller = ({
const [bestItemNewData, setBestItemNewData] = useState([]);
useEffect(()=>{
setBestInfos(
bestSellerNewDatas?.filter(
(item) => item.recommendTpCd === "BESTSELLER"
)
)
},[bestSellerNewDatas])
setBestInfos(
bestSellerNewDatas?.filter(
(item) => item.recommendTpCd === "BESTSELLER"
) || [] // 기본값으로 빈 배열 설정
)
},[bestSellerNewDatas])
useEffect(() => {
const recommendedData = bestInfos?.[0].productInfos?.slice(0, 2).map((item) => ({
...item,
foryou: true,
})) || [];
const recommendedPrdtIds = new Set(recommendedData.map(item => item.prdtId));
const baseData = bestSellerDatas?.filter(
(item) => !recommendedPrdtIds.has(item.prdtId)
).map((item) => ({
...item,
foryou: false,
})) || [];
setBestItemNewData([...recommendedData, ...baseData]);
}, [bestSellerDatas, bestInfos?.[0].productInfos]);
useEffect(() => {
if (!bestInfos || bestInfos.length === 0) {
const baseData = bestSellerDatas?.map((item) => ({
...item,
foryou: false,
})) || [];
setBestItemNewData(baseData);
return;
}
const recommendedData = bestInfos[0].productInfos?.slice(0, 20).map((item) => ({
...item,
foryou: true,
})) || [];
const recommendedPrdtIds = new Set(recommendedData.map(item => item.prdtId));
const baseData = bestSellerDatas?.map((item) => ({
...item,
foryou: recommendedPrdtIds.has(item.prdtId),
})) || [];
setBestItemNewData(baseData);
}, [bestSellerDatas, bestInfos]);
const orderStyle = useMemo(() => ({ order: order }), [order]);
@@ -286,7 +293,7 @@ const BestSeller = ({
offerInfo={offerInfo}
spotlightId={"bestsellerItem" + itemIndex}
firstLabel={rankText}
label={itemIndex * 1 + 1 + " of " + bestInfos?.[0].productInfos.length}
label={itemIndex * 1 + 1 + " of " + bestItemNewData.length}
lastLabel=" go to detail, button"
euEnrgLblInfos={euEnrgLblInfos}
>
@@ -311,4 +318,4 @@ const BestSeller = ({
);
};
export default BestSeller;
export default BestSeller;