Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

174
Vistas
Mostrar botón MUI lleno

Estoy usando la API de Spotify, que funciona para mostrar datos a largo plazo, mediano plazo o corto plazo. Sin embargo, agregué 'const [activeButton, setActiveButton] = useState(2);' y el código que lo acompaña para intentar que el botón seleccionado se muestre con un color diferente. Después de hacerlo, ya no aparece nada en la página. ¡Cualquier ayuda será apreciada, gracias!

 import axios from 'axios' import React, { useState} from 'react' import Navbar from '../Navbar/Navbar' import Artist from './Artist.js' import { useContext, useEffect } from 'react' import { UserTokenContext } from '../Context/UserTokenContext' import ToggleButton from '@mui/material/ToggleButton' import ToggleButtonGroup from '@mui/material/ToggleButtonGroup' const TopArtists = () => { const {user, setUser, accessToken, setAccessToken} = useContext(UserTokenContext); const TOPARTISTS_ENDPOINT = 'https://api.spotify.com/v1/me/top/artists' const [time, setTime] = useState('medium_term'); const [topArtists, setTopArtists] = useState([]); const [activeButton, setActiveButton] = useState(2); const handleButtonChange = (event, newButton) => { setActiveButton(newButton); console.log(newButton); } const getTopArtists = async () => { const {data} = await axios.get(TOPARTISTS_ENDPOINT, { headers: {Authorization: `Bearer ${accessToken}`,}, params: { time_range: time } }) setTopArtists(data.items); } useEffect(() => { if(user) getTopArtists(); }, [time]) return ( <> <Navbar/> {user ? <div> <h3>Top Artists:</h3> <ToggleButtonGroup exclusive onChange = {handleButtonChange}> <ToggleButton color = {activeButton === 1 ? "red" : "blue"} onClick = {() => { setTime('long_term'); setActiveButton(1);} }>All Time</ToggleButton> <ToggleButton color = {activeButton === 2 ? "red" : "blue"} onClick = {() => { setTime('medium_term'); setActiveButton(2);} }>Past Year</ToggleButton> <ToggleButton color = {activeButton === 3 ? "red" : "blue"} onClick = {() => { setTime('short_term'); setActiveButton(3);} }>Past Month</ToggleButton> </ToggleButtonGroup> {topArtists && topArtists.map(artist => <Artist artist = {artist}/>)} </div> : <p>Log in to see your top artists.</p> } </> ) } export default TopArtists;
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda