You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ScrapeResultsPage.js 1.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import React, { useEffect, useState } from 'react';
  2. import { getByIdScrappe } from '../../request/scrappe';
  3. import { Link } from "react-router-dom";
  4. import ScrappeDetails from '../../components/ScrappeDetails/ScrappeDetails'
  5. import ScrappeResult from '../../components/ScrappeResult/ScrappeResult'
  6. import PropTypes from 'prop-types';
  7. const ScrapeResultsPage = ({ location }) => {
  8. const [scrappeResults, setScrappeResults] = useState()
  9. const [scrappeDetails, setScrappeDetails] = useState()
  10. useEffect(() => {
  11. getByIdScrappe(location.id)
  12. .then(res => {
  13. setScrappeDetails(res.data)
  14. if(res.data.status==='done')
  15. setScrappeResults(res.data.result)})
  16. }, [setScrappeResults])
  17. console.log("scrappeDetails", scrappeDetails)
  18. return (
  19. <>
  20. <nav className="main-header navbar navbar-expand-md navbar-light navbar-white">
  21. <div className="container">
  22. <Link to="/" className="navbar-brand">
  23. <span className="brand-text font-weight-light">Back to Scrape</span>
  24. </Link>
  25. </div>
  26. </nav>
  27. <ScrappeDetails details = {scrappeDetails} />
  28. <div className ='content' >
  29. <div className="container">
  30. <div className="row">
  31. {(scrappeResults !== undefined) ?
  32. scrappeResults.map((result, i) => <ScrappeResult key={i} index={i} type={scrappeDetails.filters.find(el => el.name=="type" && el.value !== null)} result = {result} />)
  33. :''
  34. }
  35. </div>
  36. </div>
  37. </div>
  38. </>
  39. );
  40. };
  41. ScrapeResultsPage.propTypes = {
  42. location: PropTypes.object
  43. };
  44. export default ScrapeResultsPage;