您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

ProductsGrid.tsx 1.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import { Container, Grid } from '@mui/material';
  2. import { Box } from '@mui/system';
  3. import LoadMore from '../buttons/load-more/LoadMore';
  4. import GridItem from '../grid-item/GridItem';
  5. import ProductCard from '../product-card/ProductCard';
  6. const ProductsGrid = ({
  7. allProducts,
  8. hasNextPage,
  9. fetchNextPage,
  10. isFetchingNextPage,
  11. }) => {
  12. const dataToDisplay = allProducts.pages.map((page) =>
  13. page.product.map((item) => (
  14. <GridItem key={item._id}>
  15. <ProductCard product={item} />
  16. </GridItem>
  17. ))
  18. );
  19. return (
  20. <Container
  21. sx={{
  22. mt: 10,
  23. }}
  24. >
  25. <Grid container spacing={2}>
  26. {dataToDisplay}
  27. </Grid>
  28. <Box textAlign="center" mt={-5} mb={5}>
  29. {hasNextPage && (
  30. <LoadMore
  31. fetchNextPage={fetchNextPage}
  32. isFetchingNextPage={isFetchingNextPage}
  33. hasNextPage={hasNextPage}
  34. />
  35. )}
  36. </Box>
  37. </Container>
  38. );
  39. };
  40. export default ProductsGrid;