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

192
Visualizações
Agregar un nuevo elemento a una matriz cada vez que se llama a la función

Esto probablemente sea muy fácil, pero estoy tratando de agregar la ubicación del clima actual a una matriz cada vez que se hace clic en el botón 'agregar a favoritos'. La ubicación cambia cada vez que el usuario busca otro. Entonces, cada vez que busca una nueva ubicación, quiero poder agregar esto a una matriz para poder mostrar todas las ubicaciones favoritas en una página específica. En este momento, cada vez que se llama a la función, funciona, pero si lo hago nuevamente con otra ubicación, reescribe la primera y la matriz permanece con solo 1 elemento. ¿Alguien para ayudar?

Gracias

 let arr = []; const favCity = () => { debugger; let newArr = [...arr]; let favCity = weatherSelector.weatherInfo.location.name; newArr.push(favCity); arr.push(newArr[0]); }; <div className="details"> <div className="weather_text"> <div className="city_tempa"> <p className="city_name" onChange={(e) => favCity("city", e.target.value)}> {weatherSelector.weatherInfo.location.name} </p> <p className="city_name">, {weatherSelector.weatherInfo.location.country}</p> <br /> <p className="city_temp">{Math.round(weatherSelector.weatherInfo.current.temp_c * 10) / 10}c°</p> </div> <div className="weather_icon"> <img className="city_icon" src={weatherSelector.weatherInfo.current.condition.icon} /> <p className="city_text">{weatherSelector.weatherInfo.current.condition.text}</p> </div> <div className="fav"> <button className="fav_btn" onClick={favCity}> Add to Favorite </button> </div> </div>

Gracias a todos :)

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

0

La matriz que necesita es newArr, que contiene las nuevas ubicaciones. Entonces solo necesita asignar este newArr a arr.

 let arr = []; const favCity = () => { let newArr = [...arr]; let favCity = weatherSelector.weatherInfo.location.name; newArr.push(favCity); arr = newArr };
about 4 years ago · Juan Pablo Isaza Relatório

0

¿Al seleccionar una nueva ubicación se vuelve a cargar la página? Debido a que su código no parece tener ningún problema (en la medida en que ignoremos la creación de una nueva matriz sin motivo, puede simplemente hacer arr.push (favCity).

Porque eso significaría que arr = [] se inicializará nuevamente ... si puede publicar un ejemplo mínimo reproducible (como codepen.io), eso seguramente aclararía algunas cosas

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