profilePage.js 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import {UpdateForm} from "./index";
  2. import {gql, urlUpload, actionPromise, actionGoodCard, getGoods,
  3. actionUserFindOne, updateAction} from "../reducers";
  4. import {createStore, combineReducers, applyMiddleware, bindActionCreators} from 'redux';
  5. import { connect } from "react-redux";
  6. import { useEffect, useState, useRef } from "react";
  7. const YourProfile = ({data, getData}) => {
  8. useEffect(() => getData('ML'), [])
  9. const date = new Date(+data.createdAt);
  10. console.log(data)
  11. return (
  12. <>
  13. <div className = "profilePage">
  14. <h2>Привіт, {data.nick || "людино"}!</h2>
  15. <img src={data.avatar ? data.avatar : 'https://pngicon.ru/file/uploads/picca-1.png'} />
  16. <span>
  17. Сторінку створено {`${date.getDate()}. ${date.getMonth() + 1}. ${date.getFullYear()} о ${date.getHours()}: ${date.getMinutes()}: ${date.getSeconds()} `}
  18. </span>
  19. <span>
  20. Пс.. не подобається аватар, логін чи нікнейм? То зміни їх
  21. <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-arrow-right" viewBox="0 0 16 16">
  22. <path fill-rule="evenodd" d="M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8z"/>
  23. </svg>
  24. <span className = "click">ТИЦ</span>
  25. </span>
  26. <UpdateForm onchange = {updateAction}/>
  27. </div>
  28. </>
  29. )
  30. }
  31. const mapStateToProps = state => ({
  32. state: state,
  33. data: state.promiseRed && state.promiseRed.user &&
  34. state.promiseRed.user.payload && state.promiseRed.user.payload.data &&
  35. state.promiseRed.user.payload.data.UserFindOne
  36. // basket: state.basket,
  37. // GoodsArr: arrFromObj(ObjFilter(state.basket, "price")),
  38. // order: orderArr(arrFromObj(ObjFilter(state.basket, "price"))),
  39. // orderDone: state.promiseRed && state.promiseRed.order &&
  40. // state.promiseRed.order.payload &&
  41. // state.promiseRed.order.payload.data.OrderUpsert
  42. });
  43. const mapDispatchToProps = dispatch => bindActionCreators({
  44. getData: actionUserFindOne,
  45. // onDel: actionCartDelete,
  46. // onClear: actionCartClear,
  47. // onOrder: actionOrder
  48. }, dispatch);
  49. const CYourProfile = connect(mapStateToProps, mapDispatchToProps)
  50. (YourProfile)
  51. export default CYourProfile;