userTracks.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import {connect} from "react-redux";
  2. import {actionTrackFindByOwner} from "../actions";
  3. import {backURL} from "../actions";
  4. import {useEffect} from 'react';
  5. const defaultTracks = [
  6. {
  7. "_id": "5fe35e5be926687ee86b0a49",
  8. "url": "track/7352b53f3af39db41ffb152acadd11b2",
  9. "originalFileName": "Фруктовый Кефир - Тому, кто не дружит со своей головой (zoop.su).mp3"
  10. },
  11. {
  12. "_id": "5fe35e5be926687ee86b0a4a",
  13. "url": "track/254f8d37a4c62ccef0bf1834a43eac54",
  14. "originalFileName": "Фруктовый Кефир - Убиваю время (zoop.su).mp3"
  15. },
  16. {
  17. "_id": "5fe35e5be926687ee86b0a4b",
  18. "url": "track/710d8b4ee31df560f7d46dd745cce690",
  19. "originalFileName": "Фруктовый Кефир - Туча (zoop.su).mp3"
  20. },
  21. {
  22. "_id": "5fe35e5ce926687ee86b0a4c",
  23. "url": "track/76c3e402d9ed7b3e54640462af7e68bf",
  24. "originalFileName": "Фруктовый Кефир - Капюшон. Парашют (zoop.su).mp3"
  25. },
  26. {
  27. "_id": "5fe35e5ce926687ee86b0a4d",
  28. "url": "track/6209eae2563b6a3d0471663fcaf0aede",
  29. "originalFileName": "Фруктовый Кефир - На своей Волне (zoop.su).mp3"
  30. },]
  31. const Track = ({track:{_id,url,originalFileName}=defaultTracks}) =>
  32. <div className='Tracks'>
  33. <audio controls src={backURL+'/'+url}></audio> <strong>{originalFileName}</strong>
  34. </div>
  35. const Tracks = ({tracks}={}) =>
  36. <div>
  37. {(tracks || []).map(track => <Track track={track}/>)}
  38. </div>
  39. const CTracks = connect(state => ({tracks: state.promise.trackFindByOwner1?.payload}))(Tracks)
  40. export const UserTracks = ({match:{params:{_id}}, getData}, history) => {
  41. useEffect(() => {
  42. getData(_id)
  43. }, [_id])
  44. return (
  45. <CTracks/>
  46. )}
  47. export const CUserTracks = connect(null, {getData: actionTrackFindByOwner})(UserTracks)