0Pricing
Vue Academy · Lección

Perfilado con la pestaña Performance de Vue DevTools

Grabación de actualizaciones de componentes, identificación de renderizados innecesarios y medición de tiempos de componentes

Perfilado con la pestaña Performance de Vue DevTools es una lección gratuita de Vue Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Vue Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Vue Academy incluye 4 lecciones en total.

Por qué analizar el rendimiento

Antes de optimizar, debe saber dónde se emplea el tiempo. Vue DevTools incluye una vista de rendimiento o línea de tiempo que registra los renderizados de los componentes, para que pueda encontrar trabajo innecesario en lugar de hacer suposiciones.

Instalar Vue DevTools

Instale la extensión del navegador o ejecute la aplicación independiente. En los proyectos de Vite, el plugin vite-plugin-vue-devtools añade un inspector dentro de la aplicación.

npm install -D vite-plugin-vue-devtools

Iniciar una grabación

Abra la pestaña de línea de tiempo o rendimiento de DevTools y pulse el botón de grabación; después, interactúe con la aplicación. Detenga la grabación para capturar la actividad de renderizado de ese intervalo.

La línea de tiempo de renderizado de componentes

Cada renderizado de componente aparece como un evento en la línea de tiempo. Puede ver cuándo se volvió a renderizar un componente y cuánto tardó su renderizado.

El gráfico de commits

Un commit es una aplicación de actualizaciones al DOM. El gráfico de commits muestra cada commit y qué componentes se renderizaron en él, lo que permite detectar commits que afectan a muchos más componentes de los esperados.

Gráfico de llama de tiempos de componentes

El gráfico de llama apila las duraciones de renderizado de los componentes principales y secundarios. Las barras anchas representan renderizados lentos; las pilas profundas muestran cómo el renderizado se propaga por el árbol.

Identificar renderizados innecesarios

Un renderizado innecesario ocurre cuando un componente se vuelve a renderizar pero produce la misma salida. Estos casos aparecen como eventos de renderizado repetidos cuyo resultado no cambió el DOM.

Mismo resultado, nuevo renderizado

Una causa habitual es pasar como prop un objeto recién creado o una función flecha inline en cada renderizado, lo que rompe la memoización. El componente hijo vuelve a renderizarse aunque su resultado visible sea idéntico.

<!-- new object every parent render forces child update -->
<Child :config="{ mode: 'a' }" />

Solucionarlo con referencias estables

Eleve las constantes fuera del componente o envuelva los datos derivados en computed para pasar la misma referencia en los distintos renderizados.

const config = { mode: "a" };
// or: const config = computed(() => ({ mode: mode.value }));

Correlacionar con las interacciones

La línea de tiempo también registra eventos del ratón y del teclado. Alinee un commit lento con la interacción que lo desencadenó para encontrar la ruta exacta del código que debe optimizarse.

Contador de renderizados del inspector de componentes

El inspector de componentes puede resaltar los componentes a medida que se actualizan. Observar cómo un contador parpadea con cada cambio de estado no relacionado revela el exceso de renderizados de un vistazo.

Comprobación rápida

¿Qué representa el gráfico de commits de la pestaña de rendimiento?

Recapitulación

Utilice la pestaña de rendimiento/línea de tiempo de Vue DevTools para registrar los renderizados. El gráfico de commits muestra cada vaciado del DOM y los componentes renderizados, mientras que el gráfico de llamas revela los renderizados lentos. Busque renderizados innecesarios: componentes que vuelven a renderizarse sin cambiar su resultado, a menudo por referencias inestables en las props, y corríjalos mediante constantes elevadas o computed.

Preguntas frecuentes

¿La lección «Perfilado con la pestaña Performance de Vue DevTools» es gratis?

Sí — el texto completo de «Perfilado con la pestaña Performance de Vue DevTools» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Vue Academy, actualiza a CoddyKit PRO. El curso de Vue Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Perfilado con la pestaña Performance de Vue DevTools»?

Grabación de actualizaciones de componentes, identificación de renderizados innecesarios y medición de tiempos de componentes Practicas Vue Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Vue Academy?

No se requiere experiencia previa. Vue Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Perfilado con la pestaña Performance de Vue DevTools»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Vue Academy?

Sí. Cada lección de Vue Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. v-memo para memorizar plantillas
  2. Perfilado con la pestaña Performance de Vue DevTools
  3. Desplazamiento virtual para listas grandes
  4. Web Workers con Vue
← Volver a Vue Academy