Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

316
Views
¿Cómo ocultar el botón cuando se hace clic en otro botón en React?

Tengo 2 botones que se muestran en la página Display y Hide . Cuando se hace clic en el botón Hide , quiero ocultar el botón Display .

Estoy usando useState . Hasta cierto punto, puedo able to hide Display more text presente en el botón, pero no todo el botón

Estado inicial- https://ibb.co/jMdH3tq

Cuando se hace clic en el botón Ocultar, el texto de la pantalla desaparece pero el botón permanece: https://ibb.co/Jm5FPNy

 const [show, setShow] = useState(false); const hideButton = () => { setShow(true); };

Ocultar código de botón:

 <div> <button style={{ marginLeft: '190px' }} className="button button1" onClick={() => { clearBooks(); hideButton(); }} > Hide </button> </div>;

Mostrar código de botón:

 <button className="button button1" style={{ marginLeft: '190px', width: '124px', height: '50px' }} onClick={fetchBooks} > {!show && 'Display more'} </button>;
about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Si está tratando de ocultar el botón, haga lo siguiente: noté que el estado de la demostración está establecido en falso inicialmente y lo está configurando en verdadero al hacer clic. ¿Quiere lo contrario, verdadero como ocultar el estado inicial al seleccionar el botón?

En base a eso, ajuste show en consecuencia, ya sea show o !show

 {show && <button className="button button1" style={{ marginLeft: "190px", width: "124px", height: "50px" }} onClick={fetchBooks} > </button> }
about 4 years ago · Juan Pablo Isaza Report

0

Una forma más ordenada de hacer esto sería usar el operador ternario con su estado. Cada vez que se hace clic en sus botones, invierten el estado que cambia qué botón se representa en el DOM.

 import { useState } from "react"; export default function App() { const [show, setShow] = useState(true); function changeState() { setShow(!show); } return ( <div className="App"> {show ? ( <button onClick={changeState}> Display </button> ) : ( <button onClick={changeState}> Hide </button> )} </div> ); }
about 4 years ago · Juan Pablo Isaza Report

0

Si no desea volver a renderizar, puede lograrlo usando clases de la siguiente manera:

pantalla.js

 import "./styles.css" export default function MyScreen() { const onButtonPressed = (target) => { document.querySelector('button.hide').classList.remove('hide') target.classList.add('hide') } return ( <div> <button style={{ marginLeft: 190 }} className="button button1 hide" onClick={(element) => { onButtonPressed(element.target) clearBooks() }} > {"Hide"} </button> </div> <div> <button className="button button1" style={{ marginLeft: 190, width: 124, height: 50 }} onClick={(element) => { onButtonPressed(element.target) fetchBooks() }} > {"Display more"} </button> </div> ) }

estilos.css

 button.hide { display: none; }

Este es un ejemplo que prueba la funcionalidad JS:

 button.hide { display: none; }
 <div> <button class="button button1 hide" style="margin-left:190px;width:124px;height:50px" onClick="onButtonPressed(this)" > Hide </button> </div> <div> <button class="button button1" style="margin-left:190px;width:124px;height:50px" onClick="onButtonPressed(this)" > Display more </button> </div> <script> function onButtonPressed(element) { document.querySelector('button.hide').classList.remove('hide') element.classList.add('hide') } </script>

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!