my-playlists.js 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. import {Link} from "react-router-dom";
  2. import {useState} from "react";
  3. import {connect} from "react-redux";
  4. import {actionPlaylistFindByOwner} from "../../actions";
  5. import {store} from "../../reducers";
  6. import {actionCreatePlaylist} from "../../actions";
  7. const Playlist = ({playlist:{_id, name}={}}) => {
  8. return (
  9. <div>
  10. {name !== null ? ( <div className='list1a-li'><Link to={`/myPlaylist/${_id}`}>{name}</Link></div>) : <></>}
  11. </div>
  12. )
  13. }
  14. const MyPlaylists = ({playlists={},createPlaylist}) => {
  15. const [p, setP] = useState ('')
  16. return (
  17. <div className='my-playlists'>
  18. <input placeholder='Имя плейлиста' onChange={e => setP(e.target.value)}/>
  19. <button disabled={p.length >= 6 && p !== "" ? false : true} onClick={()=>createPlaylist(p)}>Создать</button>
  20. <div className="list1a">
  21. {playlists.map((playlist,playlistIndex) => <Playlist key={`playlist-${playlistIndex}`} playlist={playlist}/> )}
  22. </div>
  23. </div>
  24. )
  25. }
  26. export const CMyPlaylists = connect(state => ({playlists: state.promise.playlistFindByOwner?.payload || []}),
  27. {createPlaylist:actionCreatePlaylist})(MyPlaylists)