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

344
Visualizações
¿Cómo mostrar modales usando el estado global con react-router-dom?

La aplicación My React usa react-router-dom para la navegación. Dentro de cada uno de los diferentes componentes para estas rutas, existe la necesidad potencial de mostrar algún tipo de componente Modal de error cuando algo sale mal. En lugar de necesitar importar el mismo Error Modal en cada componente que lo necesite, administrar el estado dentro del padre y declarar funciones de alternancia, me gustaría hacer esto una vez fuera de todos los demás componentes y solo mostrar el Error Modal genérico cuando sea necesario.

Sospecho que es posible que necesite usar la API de contexto, pero no la he usado antes.

Encontré este artículo pero no estoy seguro de cómo implementarlo con mi aplicación que tiene varias rutas.

Idealmente, me gustaría activar el modal desde mi interceptor axios en mi index.js y mostrar el modal en la parte superior de cualquier página en la que se encuentre el usuario.

índice.js:

 //imports... axios.interceptors.response.use(undefined, err => { if (err.response.status === 500) { // Set show state for error modal here } return Promise.reject(err); }); ReactDOM.render(<App />, document.getElementById('root'));

Aplicación.js:

 import { BrowserRouter as Router, Routes, Route } from 'react-router-dom'; // other imports... const App = () => { return ( <Router> <Routes> <Route path='/page1' element={<Page1 />}></Route> <Route path='/page2' element={<Page2 />}></Route> </Routes> </Router> ); };
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

De hecho, pude resolver un problema similar a este usando la API de contexto. Vea a continuación una breve explicación:

Crea tu Proveedor Modal

 export const ModalProvider = (props) => { const createModal = () => { // ...some modal init code here } return ( <ModalContext.Provider value={{ createModal }}> <Modal/> {props.children} </ModalContext.Provider> ) }

Luego puede envolver su aplicación en este proveedor y debería tener acceso a la función createModal al acceder al contexto. ¡Espero que esto ayude!

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