En el pasado, el desarrollo front-end (web o móvil) utilizó principalmente jQuery + JS nativo. Si se utilizan algunos marcos de interfaz de usuario front-end, también puede proporcionar algunas API para usar. Además, muchos marcos de interfaz de usuario se basan en jQuery, por lo que el tramo de jQuery a AngularJS es relativamente grande. He estudiado Angularjs por un tiempo. Hablemos de la experiencia general:
Sobre comparación con jQuery
En primer lugar, Angular es un marco MVC. La diferencia entre TI y JQuery es que el primero está comprometido a desacoplar el código MVC y utiliza el modelo, el controlador y la vista para organizar el código. Este último le proporciona muchas funciones de API. No puede tener que escribir muchos JS nativos para lograr efectos más complejos, como la animación, $. Animate. Si necesita escribir JS nativo, el volumen del código será relativamente grande;
En segundo lugar, JQuery no define cómo se organiza su código. Puede colocarlo en un archivo JS separado como referencia, o puede escribirlo directamente en la página para envolverlo con etiquetas de script, o incluso escribirlo directamente en la etiqueta HTML en línea. Sin embargo, AngularJS dividirá una página HTML en varios módulos, cada módulo puede tener su propio alcance, servicio y directiva, y la comunicación puede llevarse a cabo entre los módulos, pero la estructura general es relativamente clara, es decir, el método de organización del código es modular.
Finalmente, la idea de JQuery es diseñar primero la página, y luego realizar operaciones DOM en la página existente y mostrar la página. Sin embargo, la vista angular puede ser solo un marco, y las operaciones DOM o el monitoreo del tiempo de la vista se implementan en la Directiva. En general, rara vez se escribe directamente por usted mismo, siempre que escuche el modelo. La vista también cambiará después de que cambie el modelo.
Sobre ocasiones aplicables
JQuery debe ser adecuada para la mayoría del desarrollo web, y también hay jQueryMobile en el lado móvil. Algunas personas dicen que AngularJS es más adecuado para SPA (personalmente creo que el spa en los teléfonos móviles puede causar problemas de rendimiento porque su mecanismo de verificación sucia afectará el rendimiento). En el lado de la web, todavía se pueden usar algunas aplicaciones o software de administración CRUD (por supuesto, la comprensión aquí puede no ser precisa, y lo comprenderá y lo usará más con un aprendizaje en profundidad).
Sobre la combinación de ui
El desarrollo de cualquier producto requiere el uso de la interfaz de usuario front-end. Actualmente, muchas IU se basan en jQuery, lo que significa que si desea usar AngularJS y estos componentes de la interfaz de usuario, debe usar la directiva de AngularJS para reescribir algunos componentes. Este proceso es bastante problemático. Afortunadamente, Angular nos proporciona algunos componentes de la interfaz de usuario que se pueden usar (el lado web combina principalmente componentes frontal de arranque), http://angular-ui.github.io/, y en el lado móvil, combina principalmente marco iónico http://ionicfframework.com/. Sin embargo, con el desarrollo de Angular, muchos marcos frontales HTML5 han integrado gradualmente las versiones AngularJS para su uso.
Sobre las características de Angularjs
1. Vinculación bidireccional de datos: esta puede ser su característica más emocionante. Los datos de la capa de vista y los datos de la capa del modelo son unión bidireccional. Si uno de ellos cambia, el otro lado cambiará en consecuencia. ¡No necesitas escribir ningún código! (Piense en cómo hacerlo en modo jQuery)
2. El código es modular, y el código de cada módulo tiene su propio alcance, modelo, controlador, etc.
3. La directiva poderosa puede encapsular muchas funciones en etiquetas, atributos o comentarios HTML, etc., lo que embellece enormemente la estructura de HTML y mejora la legibilidad;
4. Inyección de dependencia, dando el patrón de diseño de este lenguaje de backend al código frontal, lo que significa que el código frontal puede mejorar la reutilización y la flexibilidad. En el futuro, el modelo puede colocar una gran cantidad de operaciones en el cliente, y el servidor solo proporciona fuentes de datos y operaciones que otros clientes no pueden completar;
5. Desarrollo basado en pruebas, AngularJS tiene como objetivo comenzar con esto. Las aplicaciones desarrolladas con Angular pueden realizar fácilmente pruebas unitarias y pruebas de extremo a extremo, lo que resuelve las deficiencias del código JS tradicional que son difíciles de probar y mantener.
Lo anterior es la conclusión extraída al estudiar Angularjs por un período de tiempo. Se pueden omitir algunas de las áreas. No importa. A continuación, desarrollaremos uno de los puntos y aprenderemos paso a paso.