SHOPTIME-4011 Home 화면 On Sale 랜딩카드에 노출되는 카테고리로 이동 되도록 수정

This commit is contained in:
Dev TWIN0906
2025-06-05 10:54:24 +09:00
parent 153b5b05d2
commit 04dd67803d
4 changed files with 32 additions and 14 deletions

View File

@@ -1,4 +1,10 @@
import React, { useCallback, useEffect, useRef, useState, useMemo } from "react";
import React, {
useCallback,
useEffect,
useRef,
useState,
useMemo,
} from "react";
import classNames from "classnames";
import { useSelector } from "react-redux";
@@ -96,11 +102,14 @@ export default function TScroller({
[onScrollStop]
);
const _onScroll = useCallback((ev)=>{
if(onScroll){
const _onScroll = useCallback(
(ev) => {
if (onScroll) {
onScroll(ev);
}
},[onScroll]);
},
[onScroll]
);
const _cbScrollTo = useCallback(
(ref) => {
@@ -113,7 +122,7 @@ export default function TScroller({
[cbScrollTo]
);
const relevantPositions = useMemo(()=>{
const relevantPositions = useMemo(() => {
switch (direction) {
case "horizontal":
return ["left", "right"];
@@ -122,7 +131,7 @@ export default function TScroller({
default:
return [];
}
},[direction]);
}, [direction]);
return (
<div
@@ -139,7 +148,10 @@ export default function TScroller({
onScroll={_onScroll}
scrollMode={scrollMode || "translate"}
focusableScrollbar={focusableScrollbar}
className={classNames(isMounted && css.tScroller, noScrollByWheel && css.preventScroll)}
className={classNames(
isMounted && css.tScroller,
noScrollByWheel && css.preventScroll
)}
direction={direction}
horizontalScrollbar={horizontalScrollbar}
verticalScrollbar={verticalScrollbar}

View File

@@ -29,7 +29,6 @@ export default function HomeBanner({
handleShelfFocus,
}) {
const dispatch = useDispatch();
const homeTopDisplayInfo = useSelector(
(state) => state.home.homeTopDisplayInfo
);

View File

@@ -652,7 +652,7 @@ const HomePanel = ({ isOnTop }) => {
onExit={onExit}
onClose={onClose}
hasButton
button1Text={$L("Exit")}
button1Text={$L("1232132131")}
button2Text={$L("Cancel")}
hasText
title={$L("Exit Shop Time")}

View File

@@ -104,18 +104,25 @@ export default function OnSalePanel({ panelInfo, spotlightId }) {
setCategories(copiedCategoryInfos);
return;
}
if (categoryInfos) {
dispatch(copyCategoryInfos(categoryInfos));
setCategories(categoryInfos);
if (!selectedLgCatCd && !selectedLgCatNm) {
setSelectedLgCatCd(categoryInfos[0].lgCatCd);
setSelectedLgCatNm(categoryInfos[0].lgCatNm);
}
}
setSelectedLgCatCd(panelInfo?.lgCatCd);
setSelectedLgCatNm(panelInfo?.lgCatNm);
}
}, [categories, categoryInfos, copiedCategoryInfos, previousPanelIsDetail]);
}, [
categories,
categoryInfos,
copiedCategoryInfos,
previousPanelIsDetail,
selectedLgCatCd,
selectedLgCatNm,
]);
useEffect(() => {
if (selectedLgCatCd) {