6.15.3: Фикс обновления данных при редактировании завершённого желания
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 1m7s

This commit is contained in:
poignatov
2026-03-13 15:15:01 +03:00
parent 95ed1b48fe
commit 0dca57964d
5 changed files with 16 additions and 4 deletions

View File

@@ -1,6 +1,6 @@
{
"name": "play-life-web",
"version": "6.15.2",
"version": "6.15.3",
"type": "module",
"scripts": {
"dev": "vite",

View File

@@ -1080,6 +1080,11 @@ function AppContent() {
setWordsRefreshTrigger(prev => prev + 1)
}
// Обновляем список желаний при возврате из формы редактирования
if (prevActiveTabRef.current === 'wishlist-form' && activeTab === 'wishlist') {
setWishlistRefreshTrigger(prev => prev + 1)
}
if (isFirstLoad) {
// Первая загрузка таба
lastLoadedTabRef.current = tabKey

View File

@@ -338,7 +338,7 @@ function Wishlist({ onNavigate, refreshTrigger = 0, isActive = false, initialBoa
}
fetchBoards()
fetchItems(selectedBoardId)
if (completedExpanded && completedCount > 0) {
if (completedExpanded) {
fetchCompleted(selectedBoardId)
}
}
@@ -809,6 +809,7 @@ function Wishlist({ onNavigate, refreshTrigger = 0, isActive = false, initialBoa
wishlistId={selectedWishlistForDetail}
onNavigate={onNavigate}
boardId={selectedBoardId}
refreshTrigger={refreshTrigger}
onRefresh={async () => {
await fetchItems(selectedBoardId)
if (completedExpanded) {

View File

@@ -9,7 +9,7 @@ import './TaskList.css'
const API_URL = '/api/wishlist'
function WishlistDetail({ wishlistId, onNavigate, onRefresh, boardId, onClose, previousTab }) {
function WishlistDetail({ wishlistId, onNavigate, onRefresh, boardId, onClose, previousTab, refreshTrigger = 0 }) {
const { authFetch, user } = useAuth()
const [wishlistItem, setWishlistItem] = useState(null)
const [loading, setLoading] = useState(true)
@@ -51,6 +51,12 @@ function WishlistDetail({ wishlistId, onNavigate, onRefresh, boardId, onClose, p
}
}, [wishlistId, fetchWishlistDetail])
useEffect(() => {
if (refreshTrigger > 0 && wishlistId) {
fetchWishlistDetail()
}
}, [refreshTrigger])
const handleEdit = () => {
// Сбрасываем флаг, чтобы handleClose не вызвал history.back()
// handleTabChange заменит запись модального окна через replaceState