la creación de modales e información sobre herramientas en React a menudo era compleja y difícil de diseñar y genera muchos errores de estilo.
La API createPortal simplifica este proceso permitiendo renderizar componentes fuera del DOM principal, lo que resulta en facilidad de estilo y mantenimiento. En esta publicación aprenderemos cómo usar esta herramienta para crear modales e información sobre herramientas de la manera correcta en React.
createPortal es una función incorporada de React que le permite renderizar componentes en diferentes partes del DOM. Y es particularmente útil para crear: modales y superposiciones, componentes de terceros y elementos de interfaz de usuario personalizados.
Se utiliza un portal dentro de la declaración de devolución del componente y solo cambia la ubicación física del nodo DOM. es como teletransportar un nodo DOM fuera del árbol DOM principal. La API createPortal accede a dos parámetros y un tercero opcional:
Si asumimos que creamos un portal en el componente A y lo representamos en el componente B, los elementos secundarios del portal accederán a todo el estado y las variables del componente A y funcionarán como están en el componente A mientras se representa en el componente. B.
En el siguiente ejemplo, el portal se utiliza para teletransportar el componente Niño que acepta un estado y mueve este componente al cuerpo.
import { createPortal } from 'react-dom' const App = () => { const [state, setState] = useState() return() } export default App...
createPoratl(, document.body )
Ahora el componente secundario se representará en etiquetas de cuerpo en HTML.
createPortal es una herramienta valiosa en React para crear modales, información sobre herramientas y otros componentes que deben representarse fuera del árbol DOM principal. Al utilizar esta herramienta podrás lograr un enfoque más limpio, flexible y eficiente de estos elementos.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3