[251103] fix: shopperHouse API오류처리 및 fallback Data표시 개선
🕐 커밋 시간: 2025. 11. 03. 12:25:18 📊 변경 통계: • 총 파일: 9개 • 추가: +315줄 • 삭제: -26줄 📁 추가된 파일: + code/ 📝 수정된 파일: ~ com.twin.app.shoptime/src/actions/actionTypes.js ~ com.twin.app.shoptime/src/actions/searchActions.js ~ com.twin.app.shoptime/src/reducers/searchReducer.js ~ com.twin.app.shoptime/src/views/SearchPanel/SearchPanel.new.v2.jsx ~ com.twin.app.shoptime/src/views/SearchPanel/SearchResults.new.v2.jsx ~ com.twin.app.shoptime/src/views/SearchPanel/SearchResults.new.v2.module.less ~ com.twin.app.shoptime/src/views/SearchPanel/VoiceInputOverlay/VoiceInputOverlay.jsx ~ com.twin.app.shoptime/src/views/SearchPanel/VoiceInputOverlay/modes/VoiceResponse.jsx 🔧 함수 변경 내용: 📄 com.twin.app.shoptime/src/views/SearchPanel/VoiceInputOverlay/VoiceInputOverlay.jsx (javascript): 🔄 Modified: clearAllTimers() 📄 com.twin.app.shoptime/src/views/SearchPanel/VoiceInputOverlay/modes/VoiceResponse.jsx (javascript): ✅ Added: VoiceResponse() 🔄 Modified: SpotlightContainerDecorator() 🔧 주요 변경 내용: • 타입 시스템 안정성 강화 • 핵심 비즈니스 로직 개선
This commit is contained in:
@@ -16,7 +16,15 @@ const initialState = {
|
||||
popularBrands: [],
|
||||
hotPicksForYou: [],
|
||||
},
|
||||
shopperHouseError: null, // ShopperHouse API 오류 정보 저장
|
||||
shopperHouseError: null, // ShopperHouse API 오류 정보 저장 (디버깅용)
|
||||
shopperHouseErrorPopup: {
|
||||
// ShopperHouse 에러 팝업 상태 (사용자 알림용)
|
||||
message: null,
|
||||
type: null, // 'API_FAILURE', 'NO_RESULTS', etc.
|
||||
visible: false,
|
||||
timestamp: null,
|
||||
originalError: null,
|
||||
},
|
||||
|
||||
// 🎯 [Phase 1] SearchPanel 모드 제어 명령
|
||||
panelCommand: {
|
||||
@@ -161,6 +169,32 @@ export const searchReducer = (state = initialState, action) => {
|
||||
shopperHouseSearchId: null,
|
||||
};
|
||||
|
||||
case types.SHOW_SHOPPERHOUSE_ERROR:
|
||||
console.log('[ShopperHouse] 🔴 Redux shopperHouseErrorPopup 표시:', action.payload);
|
||||
return {
|
||||
...state,
|
||||
shopperHouseErrorPopup: {
|
||||
message: action.payload.message,
|
||||
type: action.payload.type,
|
||||
visible: action.payload.visible,
|
||||
timestamp: action.payload.timestamp,
|
||||
originalError: action.payload.originalError,
|
||||
},
|
||||
};
|
||||
|
||||
case types.HIDE_SHOPPERHOUSE_ERROR:
|
||||
console.log('[ShopperHouse] ✅ Redux shopperHouseErrorPopup 숨김');
|
||||
return {
|
||||
...state,
|
||||
shopperHouseErrorPopup: {
|
||||
message: null,
|
||||
type: null,
|
||||
visible: false,
|
||||
timestamp: null,
|
||||
originalError: null,
|
||||
},
|
||||
};
|
||||
|
||||
case types.CLEAR_SHOPPERHOUSE_DATA:
|
||||
console.log('[DEBUG] 🧹 Redux shopperHouseData 초기화 호출 - 호출 스택 추적:');
|
||||
console.log(
|
||||
|
||||
Reference in New Issue
Block a user