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

103
Visualizações
¿Componente en vainilla Javascript?

Intenté crear para crear un componente en JavaScript estándar aquí en el archivo js principal. Estoy tratando de llamar a una función que está definida en un componente y también espero un resultado, pero me da un error diciendo que showMovies no es una función. ¿Alguien puede decirme cuál es la forma correcta de hacerlo?

 import Component from './Component.js'; form.addEventListener("submit", (e) => { e.preventDefault(); main.innerHTML = ""; const searchTerm = search.value; const SEARCHAPI = "https://api.themoviedb.org/3/search/movie?&api_key=04c35731a5ee918f014970082a0088b1&query="; if (searchTerm) { Component.showMovies(SEARCHAPI + searchTerm); search.value = ""; } else { main.innerHTML = "<h1>No result Found!</h1>"; } });
 const Component = () => { const IMGPATH = "https://image.tmdb.org/t/p/w1280"; // const SEARCHAPI = "https://api.themoviedb.org/3/search/movie?&api_key=04c35731a5ee918f014970082a0088b1&query="; const main = document.getElementById("main"); const form = document.getElementById("form"); const search = document.getElementById("search"); const showMovies = (url) => { fetch(url) .then((res) => res.json()) .then(function(data) { console.log(data.results); const el = document.createElement("div"); const title = document.createElement("h3"); const rank = document.createElement("h3"); const image = document.createElement("img"); const year = document.createElement("h3"); image.src = IMGPATH + data.results[0].poster_path; el.appendChild(image); let date = new Date(data.results[0].release_date); rank.innerHTML = "Rating: &emsp;" + data.results[0].popularity; title.innerHTML = "Title: &emsp;" + data.results[0].title; year.innerHTML = "Release: &emsp;" + date.getFullYear(); main.appendChild(el); main.appendChild(title); main.appendChild(rank); main.appendChild(year); }); }; } export default Component;
about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

El componente que ha definido aquí es una función que consiste en una función llamada showMovies . Pero como no ha devuelto la función, será inaccesible. Para poder usarlo, puede devolver la función.

 const Component = ()=>{ const IMGPATH = "https://image.tmdb.org/t/p/w1280"; // const SEARCHAPI = "https://api.themoviedb.org/3/search/movie?&api_key=04c35731a5ee918f014970082a0088b1&query="; const main = document.getElementById("main"); const form = document.getElementById("form"); const search = document.getElementById("search"); const showMovies = (url) => { fetch(url) .then((res) => res.json()) .then(function (data) { console.log(data.results); const el = document.createElement("div"); const title = document.createElement("h3"); const rank = document.createElement("h3"); const image = document.createElement("img"); const year = document.createElement("h3"); image.src = IMGPATH + data.results[0].poster_path; el.appendChild(image); let date = new Date(data.results[0].release_date); rank.innerHTML = "Rating: &emsp;" + data.results[0].popularity; title.innerHTML = "Title: &emsp;" + data.results[0].title; year.innerHTML = "Release: &emsp;" + date.getFullYear(); main.appendChild(el); main.appendChild(title); main.appendChild(rank); main.appendChild(year); }); }; return { showMovies }; } export default Component;

Ahora puede usar la función usando Component().showMovies(SEARCHAPI + searchTerm)

about 4 years ago · Santiago Trujillo 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