Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

177
Visualizações
La obtención de datos lleva inherentemente unos segundos, sin embargo, ¿cómo puedo hacer que mi pantalla no muestre nada al buscar?

Estoy usando un componente llamado <Player/> , que muestra una página con "jugador no encontrado" o carga los datos de un jugador consultado y guardado.

El componente tiene un estado local, que es player y, de forma predeterminada, es nulo. Hay un useEffect que busca en la base de datos con el nombre de usuario como parámetro, y si se encuentra un usuario, el JSON devuelto se guarda y se establece en el estado con setPlayer(res) . Si no se encuentra ningún usuario en la recuperación, el estado permanece en null .

Cuando el estado es null , la página muestra 'usuario no encontrado'. Cuando el estado no es nulo (lo que significa que encontró un jugador), cargo la información.

Esto está funcionando según lo planeado, sin embargo, cuando se va a una ruta como player/existingPlayer , la página se muestra por un segundo rápido como not found antes de actualizar y mostrar los datos de los jugadores correctamente.

¿Es esta la única manera posible de hacer esto? ¿Es esto de esperar? Sé que la obtención de datos lleva inherentemente unos segundos dependiendo de la conexión, pero siento que esta experiencia de usuario es severa.

¿Alguna sugerencia para mejorar esto?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Cuando el reproductor es nulo, muestre la carga, y después de obtener la información del reproductor, si existe, simplemente muestre la información del reproductor si no está vacío "" y si su estado era igual a "" muestre el reproductor no encontrado así

 export default function App() { const [player, setPlayer] = useState(null) useEffect(() => { // fetch here and set player to "" if not found }, []) if(player == null) return <div>Loading...</div> if(player == "") return <div>No Player Found.</div> return ( <div className="App"> Player info goes here... </div> ); }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda