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

134
Visualizações
¿Hay alguna manera de crear un botón que me permita aumentar el valor de id en slide.filter para poder mostrar los diferentes contenidos de una matriz? REACCIONAR

Quiero hacer algo como un carrusel de texto (no en un bucle infinito), tengo mis datos almacenados en una matriz, para luego mostrarlos uno por uno, así que ahora quiero crear un botón que me permita moverme por la matriz. , pero no encuentro el camino, alguna solución?

.jsx

 import React from 'react' import './CambioMesPeriodo.css'; import { useState } from "react"; export default function CambioMesPeriodo() { const slidesArray = [ {id: 1, Sup: 'Texto Superior 1', Inf: 'Texto Inferior 1'}, {id: 2, Sup: 'Texto Superior 2', Inf: 'Texto Inferior 2'}, {id: 3, Sup: 'Texto Superior 3', Inf: 'Texto Inferior 3'} ] const [slide] = useState(slidesArray); var array = 1; const values = slidesArray.map(object => object.id) let validSlide = slide.filter(slides => slides.id === (values,array)) return ( <div className="slideshow-container"> <div> <p> {validSlide[0].Sup} </p> <p> {validSlide[0].Inf} </p> </div> {/* <div> {values.map(name => <h2>{name}</h2>)} </div> */} <button >Adelante</button> </div> )}

.css

 /* Slideshow container */ .slideshow-container { position: relative; background: #898989; border-radius: 10px; width: 310px; height: 65px;}

En la web. ingrese la descripción de la imagen aquí

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

0

A continuación se presenta una posible forma de lograr el objetivo deseado.

Fragmento de código

 const { useState } = React; function CambioMesPeriodo() { const slidesArray = [{ id: 1, Sup: 'Texto Superior 1', Inf: 'Texto Inferior 1' }, { id: 2, Sup: 'Texto Superior 2', Inf: 'Texto Inferior 2' }, { id: 3, Sup: 'Texto Superior 3', Inf: 'Texto Inferior 3' } ] const [slide] = useState(slidesArray); const [idx, setIdx] = useState(0); // set-up "idx" as 0 initially // this "idx" is used to index the "validSlide" array var array = 1; const values = slidesArray.map(object => object.id) // unsure of what below line aims to achieve & hence commented-out // let validSlide = slide.filter(slides => slides.id === (values, array)) // for now, let "validSlide" be same as "slide" let validSlide = slide; return ( <div className="slideshow-container"> <div> <p> {validSlide[idx].Sup} </p> <p> {validSlide[idx].Inf} </p> </div> <button onClick={ // update the "idx" to next slide or back to zero (if at end) () => setIdx( prev => ( (prev + 1) % validSlide.length ) ) } > Adelante </button> </div> ) }; ReactDOM.render( <div> DEMO <CambioMesPeriodo /> </div>, document.getElementById("rd") );
 .slideshow-container { position: relative; background: #898989; border-radius: 10px; width: 310px; height: 65px; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.8.0/umd/react.production.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.8.0/umd/react-dom.production.min.js"></script> <div id="rd" />

Explicación

Se agregaron comentarios en línea al fragmento anterior.

PD: si desea agregar valor a la comunidad stackoverflow,

Por favor considere leer: Qué hacer cuando mi pregunta es respondida ¡Gracias!

about 4 years ago · Juan Pablo Isaza Relatório

0

¿Qué tal algo simple, como lo siguiente en el archivo .js?

 import React, { useState } from 'react'; //Take the button from your favorite library import { Button } from '@mantine/core'; export default function CambioMesPeriodo() { const slidesArray = [ { id: 1, Sup: 'Texto Superior 1', Inf: 'Texto Inferior 1' }, { id: 2, Sup: 'Texto Superior 2', Inf: 'Texto Inferior 2' }, { id: 3, Sup: 'Texto Superior 3', Inf: 'Texto Inferior 3' }] const [slideId, setSlideId] = useState(0); return( <div> <p> {slidesArray[slideId].Sup} </p> <p> {slidesArray[slideId].Inf} </p> <Button value={slideId} onClick={() => setSlideId(previousValue => previousValue + 1)}></Button> </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