service page updated for multiple data
This commit is contained in:
@@ -5,18 +5,18 @@ import { useQuery } from "@tanstack/react-query";
|
||||
import ProductCard from "./productCard";
|
||||
import { useCategory } from "@/store/useCategory";
|
||||
import { useFilter } from "@/lib/filter-zustand";
|
||||
import { useEffect, useMemo } from "react";
|
||||
import { useMemo } from "react";
|
||||
import { useProductPageInfo } from "@/store/useProduct";
|
||||
import { useSubCategory } from "@/store/useSubCategory";
|
||||
import { useTranslations } from "next-intl";
|
||||
|
||||
export default function MainProduct() {
|
||||
const t = useTranslations();
|
||||
const category = useCategory((state) => state.category);
|
||||
const subCategory = useSubCategory((state) => state.subCategory);
|
||||
const filter = useFilter((state) => state.filter);
|
||||
const getFiltersByType = useFilter((state) => state.getFiltersByType);
|
||||
const setProduct = useProductPageInfo((state) => state.setProducts);
|
||||
|
||||
console.log("subCategory data: ", subCategory);
|
||||
// Query params yaratish
|
||||
const queryParams = useMemo(() => {
|
||||
const catalog = getFiltersByType("catalog");
|
||||
@@ -40,15 +40,12 @@ export default function MainProduct() {
|
||||
|
||||
// Query params qo'shish
|
||||
return `${baseLink}${queryParams}`;
|
||||
}, [category.id, category.have_sub_category, queryParams , subCategory.id]);
|
||||
}, [category.id, category.have_sub_category, queryParams, subCategory.id]);
|
||||
|
||||
const { data, isLoading, error } = useQuery({
|
||||
queryKey: ["products", subCategory.id, queryParams],
|
||||
queryFn: () => httpClient(requestLink),
|
||||
select: (data) => {
|
||||
console.log("product: ", data?.data?.data?.results);
|
||||
return data?.data?.data?.results;
|
||||
},
|
||||
select: (data) => data?.data?.data?.results,
|
||||
});
|
||||
|
||||
if (isLoading) {
|
||||
@@ -62,17 +59,13 @@ export default function MainProduct() {
|
||||
}
|
||||
|
||||
if (error) {
|
||||
return (
|
||||
<div className="text-center text-red-500 py-10">
|
||||
Ma'lumotlarni yuklashda xatolik yuz berdi
|
||||
</div>
|
||||
);
|
||||
return <div className="text-center text-red-500 py-10">{t("loadingError")}</div>;
|
||||
}
|
||||
|
||||
if (!data || data.length === 0) {
|
||||
return (
|
||||
<div className="text-center text-gray-400 py-10">
|
||||
Mahsulotlar topilmadi
|
||||
{t("productsNotFound")}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user