Heim  >  Artikel  >  Web-Frontend  >  Was sind die neuen Funktionen von AngularJS 2.0_AngularJS

Was sind die neuen Funktionen von AngularJS 2.0_AngularJS

WBOY
WBOYOriginal
2016-05-16 15:15:00918Durchsuche

AngularJS hat sich zum beliebtesten Open-Source-JavaScript-Framework in der Welt der Webanwendungsentwicklung entwickelt. Seit seiner Gründung wurde sein Erfolg durch ein erstaunliches Wirtschaftswachstum sowie die Unterstützung und Akzeptanz von Gruppen – einzelnen Entwicklern, Unternehmen und Gemeinschaften – vorangetrieben.

Angular hat sich zu einem clientseitigen MVW-Framework (Model-View-Whatever) für die Erstellung komplexer Single-Page-Anwendungen entwickelt. Es spielt sowohl beim Anwendungstest als auch beim Anwendungsschreiben eine wichtige Rolle und vereinfacht gleichzeitig den Entwicklungsprozess.

Die aktuelle Version von Angular ist 1.3, die stabil ist und von Google (dem Framework-Betreuer) zur Unterstützung vieler Anwendungen verwendet wird (schätzungsweise laufen bei Google mehr als 1.600 Anwendungen auf Angular 1.2 oder 1.3). Angular 2.0 wurde letzten Oktober auf der Nigeria-Konferenz offiziell angekündigt und die Version wird kein komplexes großes Update sein.

Warum wird Angular 2.0 eingeführt?

Bevor wir weiter auf Angular 2.0 eingehen (voraussichtlicher Veröffentlichungstermin ist Ende 2015), wollen wir kurz die Philosophie hinter der neuen Version betrachten. Die Entwicklung von Angular 2.0 beginnt mit der Lösung der folgenden Probleme:

Mobil: Die neue Version wird sich auf die Entwicklung mobiler Anwendungen konzentrieren. Der Grundgedanke ist, dass es einfacher ist, mit der Desktop-Seite umzugehen, und sobald die Herausforderungen Mobilgeräte betreffen (Leistung, Ladezeiten), wird die Konzentration auf diesen Aspekt das Problem lösen.

Modularisierung: Einzelne Module werden aus Angular-Kern entfernt, um eine bessere Leistung zu erzielen. Das bedeutet, dass Sie die Teile auswählen können, die Sie benötigen.
Modernisierung: Angular 2.0 zielt auf ES6 und „immergrüne“ moderne Browser ab (die automatisch auf die neueste Version aktualisiert werden). Dies bedeutet, dass sich Entwickler auf Code konzentrieren können, der für die Geschäftsdomäne relevant ist.

Was sind die Kontroversen?

Der Migrationspfad zur Version 2.0 wurde beim Nigeria-Treffen nicht erwähnt. Es wurde auch darauf hingewiesen, dass der Wechsel zu Version 2.0 die ursprüngliche Anwendung der Version 1.3 beschädigen würde und es keine Abwärtskompatibilität gebe. Seitdem herrscht in der Entwicklergemeinschaft Unsicherheit und Spekulationen, und einige Entwickler beginnen sich zu fragen, ob es sich lohnt, ein neues Angular 1.3-Projekt zu starten.

Was sind die Änderungen?

AtScript

AtScript ist ein übergeordneter Satz von ES6 und wird zur Entwicklung von Angular 2.0 verwendet. Es wird vom Traceur-Compiler (zusammen mit ES6) verarbeitet, um ES5-Code zu generieren und die TypeScript-Typsyntax zu verwenden, um Assertionen zur Ausführungszeit zu generieren und so Prüfungen zur Kompilierungszeit zu ersetzen. AtScript ist jedoch nicht zwingend erforderlich und Sie können zum Schreiben von Angular-Anwendungen weiterhin reinen JavaScript/ES5-Code anstelle von AtScript verwenden.

Abhängigkeitseintrag (DI) verbessern

Die Grundidee des Dependency-Injection-Modells besteht darin, dass die Client-Klasse Client die Mitgliedsvariable IServer, von der sie abhängt, nicht selbst initialisieren muss, sondern ein unabhängiges Objekt verwendet, um eine entsprechende Implementierungsklasse zu erstellen IServer und weisen Sie es der Mitgliedsvariablen des Clients zu. Es ist besonders vorteilhaft für die Modulentwicklung und Komponentenisolierung. Angular 2.0 wird diesen Aspekt von Angular 1.X lösen. Fehlende Funktionen wie untergeordnete Injektoren und Lebensdauer-/Bereichskontrollen hinzugefügt.

Anmerkungen

AtScript bietet Tools zum Verknüpfen von Metadaten und Funktionalität. Dies hilft bei der Erstellung von Objektinstanzen, die der DI-Bibliothek die notwendigen Informationen bereitstellen (Überprüfung relevanter Metadaten beim Aufruf einer Funktion oder beim Erstellen einer Instanz einer Klasse). Es erleichtert auch das Überladen von Parameterdaten durch die Bereitstellung einer Anmerkung.

Injektoren für Kinder

Ein untergeordneter Injektor erbt alle Leistungsdienste seiner übergeordneten Klasse. Je nach Anforderung können unterschiedliche Arten von Objekten aufgerufen und unterschiedliche Umfänge automatisch abgedeckt werden.

Instanzbereich

Die verbesserte DI-Bibliothek verfügt über Instanz-Scoping, das noch leistungsfähiger wird, wenn untergeordnete Injektoren und eigene Bereichskennungen verwendet werden.

Vorlagen- und Datenbindung

Bei der Entwicklung von Anwendungen gehen Vorlagen und Datenbindung Hand in Hand.

Dynamisches Laden

Dies ist eine Funktion, die in der aktuellen Angular-Version fehlt, aber in Angular 2.0 erscheinen wird. Dadurch können Entwickler unterwegs neue Befehle oder Controller hinzufügen.

Vorlage

In Angular 2.0 wird der Vorlagenkompilierungsprozess asynchron sein. Da der Code auf der ES6-Modulspezifikation basiert, lädt der Modullader Abhängigkeiten, indem er einfach auf die Komponentendefinition verweist.

Befehle

In Angular 2.0 wird es drei Anweisungen geben:

Komponentenanweisungen – Diese erstellen wiederverwendbare Komponenten über gekapselte Logik in JavaScript, HTML oder einem optionalen CSS-Stylesheet.

Dekorationsanweisungen – Diese Anweisungen werden zum Dekorieren des Elements verwendet (z. B. das Hinzufügen eines Tooltips oder die Verwendung von ng-show/ng-hide zum Ein-/Ausblenden des Elements).

Vorlagenanweisungen – diese verwandeln HTML in wiederverwendbare Vorlagen. Die Instanziierung und Einbettung von Vorlagen in das DOM kann vollständig durch Anweisungen gesteuert werden. Beispiele hierfür sind ng-if und ng-repeat.

Pelan penghalaan

Penghalaan Sudut awal direka untuk mengendalikan beberapa situasi mudah. Walau bagaimanapun, apabila rangka kerja berkembang, semakin banyak ciri ditambah. Penghalaan sudah boleh dilanjutkan dalam Angular 2.0 dan akan merangkumi ciri asas berikut:

Konfigurasi penghalaan berasaskan json yang mudah;

Kontrak pilihan atas konfigurasi;

Statik. Mod penghalaan berparameter;


penghuraikan URL;


Menyokong rentetan pertanyaan;


Gunakan status tolak atau Hashchange


Model navigasi (menjana UI navigasi);

Tajuk dokumen dikemas kini;

404 pemprosesan penghalaan;

Perkhidmatan lokasi;


Operasi sejarah.


Sekarang, mari kita lihat ciri penghalaan yang membawa Angular 2.0 ke tahap yang baharu:

Subrut

Sub-laluan akan mengubah setiap komponen aplikasi menjadi aplikasi yang lebih kecil dengan menyediakan laluan mereka sendiri, yang akan membantu merangkum set ciri keseluruhan aplikasi.

Pengaktifan skrin

Ini akan membantu pembangun mengawal kitaran hayat navigasi dengan lebih baik melalui set panggilan balik boleh*: bolehAktifkan - benarkan/sekat navigasi ke pengawal baharu;

aktifkan - balas navigasi yang berjaya ke pengawal baharu;

bolehNyahaktifkan - Benarkan/sekat navigasi dari pengawal lama;

nyahaktifkan - bertindak balas kepada navigasi yang berjaya dari pengawal lama;


Panggil balik ini akan membolehkan pembangun mengembalikan nilai Boolean atau arahan (untuk kawalan peringkat rendah).


Reka Bentuk


Semua logik ini dibina menggunakan struktur saluran paip, menjadikannya sangat mudah untuk menambah langkah anda sendiri pada saluran paip atau mengalih keluar bahan lalai. Selain itu, sifat tak segeraknya akan membolehkan pembangun menggunakan permintaan pelayan untuk mengesahkan atau memuatkan data untuk pengawal, walaupun ini masih dirancang.

Log

Angular 2.0 akan menyertakan perkhidmatan pengelogan yang dipanggil diary.js - ciri yang sangat berguna untuk mengukur masa anda dihabiskan dalam aplikasi anda.

Skop

$scope akan dialih keluar daripada Angular 2.0 dan digantikan dengan kelas ES6.

Kesimpulan

Apabila tarikh keluaran semakin hampir, keterujaan dan buzz di sekitar Angular 2.0 akan bertambah hebat. Adakah melanggar perubahan adalah perkara yang baik? Kami tidak mempunyai cara untuk mengetahuinya, tetapi lawan difahamkan gementar memandangkan kekurangan rancangan untuk berpindah. Keterujaan datang serta merta. Tetapi kerana ia akan datang, apa yang boleh kita lakukan ialah menyambutnya secara aktif.

Kandungan di atas memperkenalkan anda kepada ciri baharu AngularJS 2.0 Saya harap ia akan membantu anda!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn