index.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. import * as React from 'react';
  2. import { useEffect } from 'react';
  3. import { useParams } from 'react-router-dom';
  4. import { connect } from 'react-redux';
  5. import { store } from '../redux';
  6. import { Box, Container, Divider } from '@mui/material';
  7. import BasicCard from './userData';
  8. // import { actionFindUserOne, actionFullUserFindOne } from '../redux/action';
  9. import { actionFindUserOne, actionFullUserFindOne } from '../redux/thunks';
  10. import { StandardImageList, СStandardImageList } from './gallery';
  11. function User({ user = {}, loadUser }) {
  12. const { userId } = useParams()
  13. useEffect(() => { loadUser(userId) }, [userId])
  14. // собираем все _id подписчиков в один массив - !!!!!!!!!!!!!!!!!!!!!! РАБОТАЕТ НЕКОРРЕКТНО
  15. const promiceStatus = store.getState()?.promise?.UserFindOne?.status
  16. const followingsArr = []
  17. if (promiceStatus === 'FULFILLED' && user?.following) {
  18. // console.log(999, user.following)
  19. for (let id of (user.following)) {
  20. for (let [key, value] of Object.entries(id)) {
  21. if (key === '_id') {
  22. followingsArr.push(value)
  23. }
  24. }
  25. }
  26. }
  27. return (
  28. <React.Fragment>
  29. <Container sx={{ minHeight: '100vh' }} maxWidth="100%" >
  30. <Box sx={{ margin: "30px 50px" }}>
  31. <BasicCard userData={user} />
  32. </Box>
  33. <Divider />
  34. <Box >
  35. {/* <StandardImageList /> */}
  36. <СStandardImageList />
  37. </Box>
  38. </Container>
  39. </React.Fragment >
  40. );
  41. }
  42. // export const CUser = connect(state => ({ user: state?.promise?.UserFindOne?.payload }), { loadUser: actionFindUserOne })(User)
  43. export const CUser = connect(state => ({ user: state?.promise?.UserFindOne?.payload }), { loadUser: actionFullUserFindOne })(User)
  44. // export const CUser = connect(state => ({ user: state?.promise?.UserFindOne?.payload }), { loadUser: actionFullUserFindOne })(User)
  45. // export const CUser = connect(state => ({ user: state?.promise }), { loadUser: actionFullUserFindOne })(User)