¿Cómo mejoro AngularJS (datos enormes de HTTP)?

9 maneras de mejorar el rendimiento de AngularJS

1. Herramienta Batarang para los observadores de referencia

Batarang es una gran herramienta de desarrollo del equipo de Angular que reduce sus esfuerzos de depuración. Aunque tiene muchas características nuevas, algunas de ellas lo ayudan a perfilar y rastrear el rendimiento de su rendimiento de AngularJS. Además, el árbol de vigilancia determina qué ámbitos no se destruyen, como parece ser si hay algún aumento en la memoria.

2. Uso de JavaScript nativo o Lodash

Lodash aumenta el rendimiento de su aplicación simplemente reescribiendo parte de la lógica básica en lugar de confiar en los métodos incorporados de AngularJS. Si Lodash no está incluido en su aplicación, entonces probablemente deba volver a escribir todo en JavaScript nativo.

3. Perfilador de herramientas de desarrollo de Chrome para identificar cuellos de botella de rendimiento

Esta es una herramienta útil que le brinda la opción de seleccionar qué tipo de perfil desea crear. La línea de tiempo de asignación de registros, la instantánea de captura de montón y el perfil de asignación de registros se utilizan para la creación de perfiles de memoria. Después de esta optimización de rendimiento, su aplicación se procesará completamente en menos de dos segundos y los usuarios pueden interactuar libremente con ella en ese momento.

4. Minimizar los vigilantes

AngularJS gira completamente en torno a su ciclo de digestión. Cada vez que se activa un ciclo de resumen, recorre cada enlace para detectar cambios en el modelo. La cantidad de tiempo necesario en cada ciclo de digestión puede reducirse reduciendo el número de observadores. También reduce las huellas de la memoria de la aplicación.

5. ng-if es mejor que ng-show

La directiva ng-show alterna la propiedad de visualización CSS en un elemento en particular, mientras que la directiva ng-if realidad elimina el elemento del DOM y lo vuelve a crear si es necesario. Además, la directiva ng-switch es una alternativa al ng-if con los mismos beneficios de rendimiento.

6. No uses ng-repeat

Esta es la mayor ganancia para cualquier aplicación si no está usando la directiva ng-repeat , por lo que es aconsejable evitar ng-repeat y construir el HTML usando JavaScript. Para las aplicaciones de vocalización, el uso de ng-if resulta en la adición de observadores innecesarios. El uso de la directiva ng-bind-html es una mejor solución para deshacerse de este problema.

7. Use $ watchCollection (incluye el tercer parámetro)

Usar $watch con dos parámetros es bueno, pero usar $watch con tres parámetros, es decir, $watch('value',function(){},true) , hace que Angular realice una verificación profunda (para verificar cada propiedad del objeto). Pero esto podría ser costoso. Por lo tanto, para resolver este problema de rendimiento, Angular proporciona $watchCollection('value', function(){}) que actúa casi de manera similar $ watch con el tercer parámetro, excepto que solo verifica la primera capa de propiedades del objeto a bajo costo.

8. Use console.time para problemas de depuración

Si su aplicación tiene problemas con la depuración y afecta el rendimiento de Angular, use console.time , que es una gran API.

9. Debounce ng-model

Puede cancelar la entrada con ng-model . Por ejemplo, para eliminar la entrada de búsqueda como GOOGLE , debe usar ng-model-options=”{debounce:250}” . Esto hace que el ciclo de resumen no se active más de una vez cada 250 ms debido a los cambios en este modelo de entrada.

El tiempo de desarrollo es muy importante hoy en día, por lo que necesita un marco integral como AngularJS para ejecutar su negocio rápidamente de forma inmediata.

Biografía del autor: Alex Patel está trabajando en ValueCoder, una empresa de desarrollo de Angular.JS.