[오류 처리]
- 혹시 모를 남은 추천 수정한 파일들에 대한 수정. - 없을때는 빈배열이나 기초값으로 가도록 수정.
This commit is contained in:
@@ -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;
|
||||
Reference in New Issue
Block a user