3
respostas

[Dúvida] A pesquisa não funciona com o console.log

Oi pessoal, tudo joia? Estou na aula 4, e fiz o código para a pesquisa, porém dá um erro no Chrome.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Parece que 'termoDeBusca' não foi definido, só que eu já revisei todo os códigos de todos os arquivos e não encontro o erro.

Esse é o código onde tá o termoDeBusca:

//conectaApi.js

async function listaVideos(){
    const conexao = await fetch("http://localhost:3000/videos");
    const conexaoConvertida = await conexao.json();
        return conexaoConvertida;
}
async function criaVideo(titulo, descricao, url, imagem){
    const conexao = await fetch("http://localhost:3000/videos", {
        method: "POST",
        headers: {
            "content-type": "application/json"
        },
        body: JSON.stringify({
            titulo: titulo,
            descricao: `${descricao} mil visualizações`,
            url: url,
            imagem: imagem
        })
    });
    const conexaoConvertida = await conexao.json();
    return conexaoConvertida;
}
async function buscaVideo(){
    const conexao = await fetch(`http://localhost:3000/videos?q=${termoDeBusca}`)
    const conexaoConvertida = conexao.json(); 
    return conexaoConvertida;
}
export const conectaApi = {
    listaVideos,
    criaVideo,
    buscaVideo
}
3 respostas

Desculpe... não consigo colocar o código identado.

Oi Aline, tudo bem?

Para colocar seu código em formato de bloco, basta colocar o conteúdo entre crases, ou clicar no icone de incode no cabeçalho do tópico, </> e colocar o conteúdo entre as crases que aparecer.

Quanto ao erro acredito que ele está acontecendo porque a variável 'termoDeBusca' não foi definida no trecho de código que você mostrou. Para corrigir esse erro, você precisa passar o valor do termo de busca como parâmetro para a função 'buscaVideo()'.

Por exemplo, você pode modificar o código da seguinte forma:

async function buscaVideo(termoDeBusca){
    const conexao = await fetch(`http://localhost:3000/videos?q=${termoDeBusca}`);
    const conexaoConvertida = conexao.json(); 
    return conexaoConvertida;
}

E então, ao chamar a função 'buscaVideo()', você deve passar o valor do termo de busca como argumento.

Espero ter ajudado, qualquer dúvida, me coloco à disposição! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Oi Vitor, deu muito certo! Obrigada pela ajuda e pela dica de como passar o código.