Обновлены условия пропуска запросов в компонентах, чтобы учитывать случаи, когда vehicleId может быть undefined или null. Исправлены проверки в следующих компонентах: CatalogGroupsSection, CategoriesSection, GroupDetailsSection, QuickGroupsSection, UnitDetailsSection, UnitsSection, KnotIn, VinCategory, VinLeftbar, VehicleDetailsPage и PartDetailPage.

This commit is contained in:
Bivekich
2025-06-30 00:39:55 +03:00
parent f894b7e023
commit 4a3da4d5c5
11 changed files with 114 additions and 36 deletions

View File

@ -123,7 +123,7 @@ const VehicleDetailsPage = () => {
...(finalSsd && { ssd: finalSsd }),
localized: true
},
skip: !brand || !vehicleId,
skip: !brand || vehicleId === undefined || vehicleId === null,
errorPolicy: 'all'
}
);
@ -194,8 +194,9 @@ const VehicleDetailsPage = () => {
);
}
// Если vehicleId невалидный (например, '0'), показываем предупреждение и не рендерим поиск
if (!vehicleId || vehicleId === '0') {
// Если vehicleId отсутствует или пустой, показываем предупреждение
// Важно: vehicleId может быть '0' для некоторых автомобилей, найденных по VIN
if (!vehicleId || vehicleId === '') {
return (
<main className="min-h-screen bg-yellow-50 flex items-center justify-center">
<div className="text-center">
@ -214,7 +215,8 @@ const VehicleDetailsPage = () => {
// Гарантируем, что vehicleId — строка
const vehicleIdStr = Array.isArray(vehicleId) ? (vehicleId[0] || '') : (vehicleId || '');
const fallbackVehicleId = (vehicleIdStr !== '0' ? vehicleIdStr : '');
// Для Laximo API vehicleId может быть '0' для автомобилей, найденных по VIN
const fallbackVehicleId = vehicleIdStr;
let vehicleInfo = vehicleData?.laximoVehicleInfo || {
vehicleid: fallbackVehicleId,
@ -225,8 +227,8 @@ const VehicleDetailsPage = () => {
attributes: [] as never[]
};
// Если вдруг с сервера пришёл vehicleid: '0', подменяем на корректный
if (vehicleInfo.vehicleid === '0' && fallbackVehicleId) {
// Убеждаемся, что vehicleid соответствует параметру из URL
if (vehicleInfo.vehicleid !== fallbackVehicleId && fallbackVehicleId) {
vehicleInfo = { ...vehicleInfo, vehicleid: fallbackVehicleId };
}

View File

@ -74,12 +74,12 @@ const PartDetailPage = () => {
oemNumber: oemNumber,
ssd: finalSsd
},
skip: !brand || !vehicleId || !oemNumber || !finalSsd,
skip: !brand || vehicleId === undefined || vehicleId === null || !oemNumber || !finalSsd,
errorPolicy: 'all'
}
);
if (!brand || !vehicleId || !oemNumber) {
if (!brand || vehicleId === undefined || vehicleId === null || !oemNumber) {
return (
<>
<Head>