useProducts
The useProducts
hook is used to get the products data by passing the query params.
Params | Description |
---|---|
query | Data to be fetched |
filters | Filters to be applied |
sort | Sort to be applied |
limit | Limit of data to be fetched |
Usage
import { useProducts } from '@appmaker-xyz/shopify';
const {
data,
isLoading,
isError,
hasNextPage,
fetchNextPage,
isFetchingNextPage,
productList,
isFetching,
} = useProducts({ query, filters: appliedFilters, sort: appliedSort, limit });
Example : Fetch products by product ids
import { useProducts } from '@appmaker-xyz/shopify';
const productIds = ['gid://shopify/Product/123456789', 'gid://shopify/Product/987654321'];
const { productList } = useProducts({ query: { productIds } });
Example : Fetch products by collection id with filters and sort
import { useProducts } from '@appmaker-xyz/shopify';
import { usePageState } from '@appmaker-xyz/core';
const appliedFilter = usePageState((state) => state.filter);
const appliedSort = usePageState((state) => state.sort);
const { productList } = useProducts({
query: { collectionId: 'gid://shopify/Collection/268904398894' }, // Fetch products by collection id
filters: appliedFilters,
sort: appliedSort,
});
Example : Fetch products by collection id
import { useProducts } from '@appmaker-xyz/shopify';
const { productList } = useProducts({
query: { collectionId: 'gid://shopify/Collection/268904398894' }, // Fetch products by collection id
limit: 10,
});
Example : Fetch products by recommendation id
import { useProducts } from '@appmaker-xyz/shopify';
const { productList } = useProducts({
query: { productRecommendationId: 'gid://shopify/Product/123456789' }, // Fetch products by recommendation id
limit: 10,
});
Example : Fetch products by search query
import { useProducts } from '@appmaker-xyz/shopify';
const { productList } = useProducts({
query: { searchQuery: 'T-shirt' }, // Fetch products by search query
limit: 10,
});