userTracks.js 2.0 KB

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