Оптимизация wishlist: раздельные запросы и копирование
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 1m14s

This commit is contained in:
poignatov
2026-01-13 20:55:44 +03:00
parent db3b2640a8
commit ce7e0e584a
8 changed files with 943 additions and 185 deletions

View File

@@ -615,9 +615,9 @@ function AppContent() {
{
// Для task-form и wishlist-form явно удаляем параметры, только если нет никаких параметров
// task-form может иметь taskId (редактирование) или wishlistId (создание из желания)
const isTaskFormWithNoParams = tab === 'task-form' && params.taskId === undefined && params.wishlistId === undefined
const isWishlistFormWithNoParams = tab === 'wishlist-form' && params.wishlistId === undefined
// task-form может иметь taskId (редактирование), wishlistId (создание из желания), или returnTo (возврат после создания)
const isTaskFormWithNoParams = tab === 'task-form' && params.taskId === undefined && params.wishlistId === undefined && params.returnTo === undefined
const isWishlistFormWithNoParams = tab === 'wishlist-form' && params.wishlistId === undefined && params.newTaskId === undefined
if (isTaskFormWithNoParams || isWishlistFormWithNoParams) {
setTabParams({})
if (isNewTabMain) {
@@ -848,6 +848,8 @@ function AppContent() {
onNavigate={handleNavigate}
taskId={tabParams.taskId}
wishlistId={tabParams.wishlistId}
returnTo={tabParams.returnTo}
returnWishlistId={tabParams.returnWishlistId}
/>
</div>
)}
@@ -857,6 +859,7 @@ function AppContent() {
<Wishlist
onNavigate={handleNavigate}
refreshTrigger={wishlistRefreshTrigger}
isActive={activeTab === 'wishlist'}
/>
</div>
)}
@@ -864,10 +867,11 @@ function AppContent() {
{loadedTabs['wishlist-form'] && (
<div className={activeTab === 'wishlist-form' ? 'block' : 'hidden'}>
<WishlistForm
key={`${tabParams.wishlistId || 'new'}-${tabParams.editConditionIndex ?? ''}`}
key={`${tabParams.wishlistId || 'new'}-${tabParams.editConditionIndex ?? ''}-${tabParams.newTaskId ?? ''}`}
onNavigate={handleNavigate}
wishlistId={tabParams.wishlistId}
editConditionIndex={tabParams.editConditionIndex}
newTaskId={tabParams.newTaskId}
/>
</div>
)}