Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Não esta captando o valor do input.

Olá, o meu input não está captando o valor do input.

import React, { useState } from "react";
import "./pesquisa.css";
import { livros } from "./dadosPesquisa";

function Pesquisa() {
  const [livrosPesquisados, setLivrosPesquisados] = useState([]);

  console.log(livrosPesquisados)

  return (
    <section className="pesquisa-container">
      <h2 className="pesquisa-title">Já sabe por onde começar?</h2>
      <h3 className="pesquisar-subtitle">
        Encontre seu livro em nossa estante
      </h3>
      <input
        className="input"
        placeholder="digite aqui..."
        onBlur={evento => {
          const textoDigitado = evento.target.value
          const resultado = livros.filter(livro => livro.nome.includes(textoDigitado))
          setLivrosPesquisados(resultado)
        } }
      />
    </section>
  );
};

export default Pesquisa;

no console não aparece nada.

2 respostas
solução!

Olá Tiago, tudo ok por aí?

Parece que você está tendo problemas para capturar o valor do input no seu componente React. O código que você compartilhou parece correto, mas pode haver alguns motivos pelos quais o valor não está sendo exibido no console. Vamos verificar algumas possíveis causas:

  1. Certifique-se de que a importação do componente Pesquisa esteja correta no seu componente principal ou em qualquer componente que esteja utilizando o Pesquisa. Verifique se você está importando corretamente o componente e se está renderizando-o corretamente no seu código.

  2. Verifique se o array livros importado de "./dadosPesquisa" contém dados válidos. Certifique-se de que a estrutura de dados esteja correta e que haja objetos com a propriedade "nome" dentro do array.

  3. Verifique se você está utilizando o evento correto para capturar o valor do input. No seu código, você está usando o evento onBlur, que é acionado quando o elemento perde o foco. Certifique-se de que você está digitando algo no input e, em seguida, clicando fora do input para acionar o evento onBlur.

Se você revisou esses pontos e ainda não está vendo nenhum valor exibido no console, pode ser útil adicionar algumas instruções de depuração adicionais no seu código. Por exemplo, você pode adicionar um console.log dentro do evento onBlur para verificar se o evento está sendo acionado corretamente e se o valor do input está sendo capturado. Desta forma, você pode rastrear o problema com mais precisão.

Espero que isso ajude a resolver o problema! Se você tiver mais dúvidas, fique à vontade para perguntar.

Obrigado! :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software