Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 7786 | Rev 12149 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
7459 stevensc 1
import React, { useEffect } from "react";
7205 stevensc 2
import FeedTemplate from "./FeedTemplate";
7458 stevensc 3
import { fetchFeeds, setCurrentPage } from '../../redux/feed/feed.actions'
4
import { useDispatch, useSelector } from "react-redux";
5
import PaginationComponent from "../../shared/PaginationComponent";
7786 stevensc 6
import Spinner from "../../shared/Spinner";
7
import NotificationAlert from "../../shared/notification/NotificationAlert";
7161 stevensc 8
 
7458 stevensc 9
const FeedSection = React.memo(() => {
7205 stevensc 10
 
7458 stevensc 11
  const { allFeeds, timelineUrl, pages, currentPage, loading } = useSelector(state => state.feed);
7463 stevensc 12
 
7458 stevensc 13
  const dispatch = useDispatch()
7205 stevensc 14
 
7458 stevensc 15
  useEffect(() => {
16
    dispatch(fetchFeeds(timelineUrl, currentPage))
7467 stevensc 17
  }, [timelineUrl]);
7458 stevensc 18
 
19
 
20
  const onChangePageHandler = (currentPage) => {
21
    dispatch(setCurrentPage(currentPage))
22
    dispatch(fetchFeeds(timelineUrl, currentPage))
23
    window.scrollTo(0, 0);
24
  };
25
 
7235 stevensc 26
  if (loading) {
7786 stevensc 27
    return <Spinner />
7221 stevensc 28
  }
29
 
7235 stevensc 30
 
7154 stevensc 31
  return (
7232 stevensc 32
    <>
33
      {
7458 stevensc 34
        allFeeds.map((feed) =>
7232 stevensc 35
          <FeedTemplate
36
            feed={feed}
37
            key={feed.feed_unique}
38
          />
39
        )
40
      }
7458 stevensc 41
      <PaginationComponent
42
        onChangePage={onChangePageHandler}
43
        pages={pages}
44
        isRow
45
        currentActivePage={currentPage}
46
      />
7786 stevensc 47
      <NotificationAlert />
7232 stevensc 48
    </>
7205 stevensc 49
  );
7235 stevensc 50
});
7205 stevensc 51
 
7154 stevensc 52
export default FeedSection