Добавлено условное отображение компонента InfoSearch и мобильных фильтров только при наличии результатов поиска. Обновлена логика отображения информации о найденных предложениях в компоненте InfoSearch.

This commit is contained in:
Bivekich
2025-07-11 08:31:05 +03:00
parent 26e4a95ae4
commit b11142ad0f
2 changed files with 78 additions and 60 deletions

View File

@ -32,7 +32,11 @@ const InfoSearch: React.FC<InfoSearchProps> = ({
<div className="w-layout-hflex flex-block-10"> <div className="w-layout-hflex flex-block-10">
<h1 className="heading">{name}</h1> <h1 className="heading">{name}</h1>
<div className="text-block-4"> <div className="text-block-4">
Найдено {offersCount} предложений от {minPrice} {offersCount > 0 ? (
<>Найдено {offersCount} предложений от {minPrice}</>
) : (
<>Ничего не найдено</>
)}
</div> </div>
</div> </div>
{/* <div className="w-layout-hflex flex-block-11"> {/* <div className="w-layout-hflex flex-block-11">

View File

@ -526,6 +526,8 @@ export default function SearchResult() {
return ( return (
<> <>
<MetaTags {...metaData} /> <MetaTags {...metaData} />
{/* Показываем InfoSearch только если есть результаты */}
{initialOffersExist && (
<InfoSearch <InfoSearch
brand={result ? result.brand : brandQuery} brand={result ? result.brand : brandQuery}
articleNumber={result ? result.articleNumber : searchQuery} articleNumber={result ? result.articleNumber : searchQuery}
@ -533,6 +535,10 @@ export default function SearchResult() {
offersCount={result ? result.totalOffers : 0} offersCount={result ? result.totalOffers : 0}
minPrice={minPrice} minPrice={minPrice}
/> />
)}
{/* Показываем мобильные фильтры только если есть результаты */}
{initialOffersExist && (
<>
<section className="main mobile-only"> <section className="main mobile-only">
<div className="w-layout-blockcontainer container w-container"> <div className="w-layout-blockcontainer container w-container">
<div className="w-layout-hflex flex-block-84"> <div className="w-layout-hflex flex-block-84">
@ -564,6 +570,8 @@ export default function SearchResult() {
searchQuery={filterSearchTerm} searchQuery={filterSearchTerm}
onSearchChange={(value) => handleFilterChange('search', value)} onSearchChange={(value) => handleFilterChange('search', value)}
/> />
</>
)}
{/* Лучшие предложения */} {/* Лучшие предложения */}
{bestOffersData.length > 0 && ( {bestOffersData.length > 0 && (
<section className="section-6"> <section className="section-6">
@ -621,6 +629,8 @@ export default function SearchResult() {
</div> </div>
</section> </section>
)} )}
{/* Показываем основную секцию с фильтрами только если есть результаты */}
{initialOffersExist && (
<section className="main"> <section className="main">
<div className="w-layout-blockcontainer container w-container"> <div className="w-layout-blockcontainer container w-container">
<div className="w-layout-hflex flex-block-13-copy"> <div className="w-layout-hflex flex-block-13-copy">
@ -810,9 +820,13 @@ export default function SearchResult() {
</div> </div>
</div> </div>
</section> </section>
)}
{/* Показываем CatalogSubscribe только если есть результаты */}
{initialOffersExist && (
<section className="section-3"> <section className="section-3">
<CatalogSubscribe /> <CatalogSubscribe />
</section> </section>
)}
<Footer /> <Footer />
<MobileMenuBottomSection /> <MobileMenuBottomSection />
</> </>