1.1 KiB
1.1 KiB
57. 상점 구매 UI 동기화 버그 수정 (Fix Shop Purchase UI Sync Bug)
1. 목표 (Goal)
- 상점에서 아이템 구매 성공 시, 인벤토리 및 골드 상태 변화가 UI에 즉시 반영되지 않는 문제를 해결합니다.
ShopProvider가BattleProvider소유의player객체를 수정했을 때,BattleProvider를 구독하는 위젯들이 갱신되도록 강제합니다.
2. 구현 상세 (Implementation Details)
BattleProvider
refreshUI()메서드 추가: 단순히notifyListeners()를 호출하여BattleProvider의 상태 변경을 알리는 public 메서드.
ShopUI
_showBuyConfirmation수정:shopProvider.buyItem호출 후 성공(true) 시,battleProvider.refreshUI()를 호출.- 이를 통해
InventoryScreen이나 상단 바의 골드 표시 등BattleProvider를 구독하는 모든 UI가 재빌드되어, 변경된 인벤토리와 골드 상태를 즉시 반영.
3. 결과 (Result)
- 상점 구매 직후 인벤토리에 아이템이 정상적으로 표시되고, 소모된 골드가 UI에 즉시 업데이트됩니다.