Proyectos de Subversion LeadersLinked - Backend

Rev

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

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