Descubra para qué es útil el gancho useMemo React y cómo trabajar con él.
Echa un vistazo a miIntroducción a React Hooksprimero, si eres nuevo en ellos.
Un gancho de React que a veces uso esuseMemo
.
import React, { useMemo } from 'react'
Este gancho se utiliza para crear un valor memorizado.
Este gancho es muy similar auseCallback, la diferencia es que
useCallback
devuelve una devolución de llamada memorizada yuseMemo
devuelve un valor memorizado, el resultado de esa llamada a la función. El caso de uso también es diferente.useCallback
se utiliza para devoluciones de llamada que se pasan a componentes secundarios.
A veces hay que calcular un valor, ya sea mediante un cálculo complejo o llegando a la base de datos para realizar una consulta costosa oa la red.
Usando este gancho, esta operación se realiza solo una vez, luego el valor se almacenará en el valor memorizado y la próxima vez que desee hacer referencia a él, lo obtendrá mucho más rápido.
He aquí cómo usarlo:
const memoizedValue = useMemo(() => expensiveOperation())
Asegúrese de agregar esa matriz vacía como segundo parámetro parauseMemo()
, de lo contrario no se producirá ninguna memorización.
Si necesita pasar argumentos, también debe pasarlos en la matriz:
const memoizedValue = useMemo(() => expensiveOperation(param1, param2), [param1, param2])
Si uno de los parámetros cambia cuando intenta acceder al valor, el valor, por supuesto, se calculará sin memorizar.
Descarga mi gratisReact Handbook
Más tutoriales de react:
- Un ejemplo de aplicación simple de React: obtenga información de los usuarios de GitHub a través de la API
- Construye un contador simple con React
- Configuración de VS Code para el desarrollo de React
- Cómo pasar accesorios a un componente secundario a través de React Router
- Crea una aplicación con Electron y React
- Tutorial: crea una hoja de cálculo usando React
- La hoja de ruta para aprender React
- Aprenda a usar Redux
- Empezando con JSX
- Componentes con estilo
- Introducción a Redux Saga
- Introducción a React Router
- Introducción a React
- Reaccionar componentes
- El DOM virtual
- Reaccionar eventos
- El estado de reacción
- Reaccionar apoyos
- El fragmento de reacción
- La API React Context
- Reaccionar PropTypes
- Reaccionar conceptos: declarativo
- Reaccionar: Cómo mostrar un componente diferente al hacer clic
- Cómo hacer un bucle dentro de React JSX
- Props vs State en React
- ¿Deberías usar jQuery o React?
- ¿Cuánto JavaScript necesitas saber para usar React?
- Introducción a Gatsby
- Cómo hacer referencia a un elemento DOM en React
- Flujo de datos unidireccional en React
- Reaccionar componentes de orden superior
- Reaccionar eventos del ciclo de vida
- Concepto de reacción: inmutabilidad
- Concepto de reacción: Pureza
- Introducción a React Hooks
- Introducción a create-react-app
- Concepto de reacción: Composición
- Reaccionar: componentes de presentación frente a contenedores
- División de código en React
- Representación del lado del servidor con React
- Cómo instalar React
- CSS en React
- Usando SASS en React
- Manejo de formularios en React
- Reaccionar StrictMode
- Reaccionar portales
- Reaccionar accesorios de renderizado
- Prueba de componentes de React
- Cómo pasar un parámetro a los controladores de eventos en React
- Cómo manejar errores en React
- Cómo devolver múltiples elementos en JSX
- Representación condicional en React
- React, cómo transferir accesorios a componentes secundarios
- Cómo obtener el valor de un elemento de entrada en React
- Cómo utilizar el gancho useState React
- Cómo usar el gancho useCallback React
- Cómo utilizar el gancho useEffect React
- Cómo utilizar el gancho useMemo React
- Cómo utilizar el gancho useRef React
- Cómo usar el gancho useContext React
- Cómo utilizar el gancho useReducer React
- Cómo conectar su aplicación React a un backend en el mismo origen
- El tutorial de Reach Router
- Cómo utilizar las herramientas de desarrollo de React
- Cómo aprender React
- Cómo depurar una aplicación React
- Cómo renderizar HTML en React
- Cómo arreglar el error `dangerouslySetInnerHTML` no coincidió en React
- Cómo solucioné un problema con el estado del formulario de inicio de sesión de React y el autocompletado del navegador
- Cómo configurar HTTPS en una aplicación React en localhost
- Cómo corregir el error "no se puede actualizar un componente mientras se renderiza un componente diferente" en React
- ¿Puedo usar React hooks dentro de un condicional?
- Usar useState con un objeto: cómo actualizar
- Cómo moverse por bloques de código con React y Tailwind
- Reaccionar, enfocar un elemento en Reaccionar cuando se agrega al DOM
- Reaccionar, editar texto con doble clic