In der Vergangenheit verwendete die Front-End-Entwicklung (Web oder Mobile) hauptsächlich JQuery + native JS. Wenn einige Front-End-UI-Frameworks verwendet werden, kann es auch einige APIs zur Verfügung stellen. Darüber hinaus basieren viele UI -Frameworks auf JQuery, sodass die Spannweite von JQuery bis AngularJS relativ groß ist. Ich habe AngularJs für eine Weile studiert. Sprechen wir über die Gesamterfahrung:
Über den Vergleich mit JQuery
Zunächst ist Angular ein MVC -Gerüst. Der Unterschied zwischen IT und JQuery besteht darin, dass der erstere der Entkopplung des MVC -Codes verpflichtet ist und Modell, Controller und Ansicht verwendet, um den Code zu organisieren. Letzteres bietet Ihnen viele API -Funktionen. Sie müssen nicht viele native JS schreiben, um komplexere Effekte wie Animation, $ .animate zu erzielen. Wenn Sie native JS schreiben müssen, ist das Codevolumen relativ groß.
Zweitens definiert JQuery nicht, wie Ihr Code organisiert ist. Sie können es in einer separaten JS -Datei als Referenz platzieren oder direkt auf die Seite schreiben, um sie mit Skript -Tags zu wickeln oder sogar direkt in das HTML -Tag in Inline zu schreiben. AngularJs wird jedoch eine HTML -Seite in mehrere Module unterteilen. Jedes Modul kann seinen eigenen Bereich, Service und eine eigene Richtlinie haben, und die Kommunikation kann zwischen Modulen durchgeführt werden, aber die Gesamtstruktur ist relativ klar, dh die Code -Organisationsmethode ist modular.
Schließlich besteht die Idee von JQuery darin, zuerst die Seite zu entwerfen und DOM -Vorgänge auf der vorhandenen Seite durchzuführen und die Seite anzuzeigen. Die Winkelansicht kann jedoch nur ein Framework sein, und die DOM -Operationen oder die Zeitüberwachung der Ansicht werden in der Richtlinie implementiert. Im Allgemeinen wird es selten direkt von Ihnen geschrieben, solange Sie das Modell hören. Die Ansicht ändert sich auch nach Änderungen des Modells.
Über zutreffende Anlässe
JQuery sollte für die meisten Webentwicklung geeignet sein, und es gibt auch JQueryMobile auf der mobilen Seite. Einige Leute sagen, dass AngularJS besser für Spa geeignet ist (ich persönlich denke, dass Spa auf Mobiltelefonen Leistungsprobleme verursachen kann, da der schmutzige Überprüfungsmechanismus die Leistung beeinflusst). Auf der Webseite können immer noch einige CRUD-Anwendungen oder Verwaltungssoftware verwendet werden (natürlich ist das Verständnis hier möglicherweise nicht korrekt, und Sie werden es mehr mit ausführlichem Lernen verstehen und verwenden).
Über die Kombination von UI
Die Entwicklung eines Produkts erfordert die Verwendung der Front-End-Benutzeroberfläche. Derzeit basieren viele UIs auf JQuery. Wenn Sie AngularJS und diese UI -Komponenten verwenden möchten, müssen Sie AngularJS 'Richtlinie verwenden, um einige Komponenten neu zu schreiben. Dieser Prozess ist ziemlich problematisch. Glücklicherweise bietet Angular uns einige UI-Komponenten, die verwendet werden können (Webseite kombiniert hauptsächlich Bootstrap Front-End-Komponenten), http://angular-ui.github.io/ und auf der mobilen Seite kombiniert es hauptsächlich Ionic Framework http://ionicframework.com/. Mit der Entwicklung von Angular haben viele HTML5-Front-End-Frameworks jedoch allmählich integrierte AngularJS-Versionen zur Verwendung integriert.
Über die Merkmale von AngularJs
1. Bidirektionale Bindung von Daten: Dies kann das aufregendste Merkmal sein. Die Daten der Ansichtsschicht und die Daten der Modellschicht sind bidirektionale Bindung. Wenn sich einer von ihnen ändert, ändert sich die andere Seite entsprechend. Sie müssen keinen Code schreiben! (Überlegen Sie, wie es im JQuery -Modus geht)
2. Der Code ist modular und der Code jedes Moduls hat einen eigenen Umfang, Modell, Controller usw.
3. Die leistungsstarke Richtlinie kann viele Funktionen in HTML -Tags, Attribute oder Kommentare usw. einbeziehen, die die Struktur von HTML erheblich verschönern und die Lesbarkeit verbessern.
4. Abhängigkeitsinjektion, die dem Front-End-Code das Entwurfsmuster dieser Backend-Sprache verleiht, was bedeutet, dass der Front-End-Code die Wiederverwendbarkeit und Flexibilität verbessern kann. In Zukunft kann das Modell eine große Anzahl von Vorgängen auf den Client platzieren, und der Server bietet nur Datenquellen und -vorgänge, die andere Clients nicht ausfüllen können.
5. Testgetriebene Entwicklung und AngularJS wollen damit beginnen. Die mit Angular entwickelten Anwendungen können problemlos Unit-Tests und End-to-End-Tests durchführen, wodurch die Mängel des herkömmlichen JS-Codes, das schwer zu testen und aufrechtzuerhalten zu können, löst.
Die oben genannten Schlussfolgerungen, die durch die Untersuchung von AngularJs für einen bestimmten Zeitraum untersucht werden. Einige der Bereiche können weggelassen werden. Es spielt keine Rolle. Als nächstes werden wir einen der Punkte entwickeln und Schritt für Schritt lernen.