Wat ass dobannen Angular 8?

Auteur: Louise Ward
Denlaod Vun Der Kreatioun: 10 Februar 2021
Update Datum: 18 Mee 2024
Anonim
Synchronized vs ReadWriteLock vs StampedLock [Java Multithreading]
Videospiller: Synchronized vs ReadWriteLock vs StampedLock [Java Multithreading]

Inhalt

Angular 8 ass déi lescht Versioun vu Google Angular - ee vun de beschte JavaScript Frameworks ronderëm. An dësem Artikel lafe mir duerch dat wat speziell um Angular 8 ass, a weisen Iech wéi Dir ufänkt. Als éischt e kuerze Réckbléck op dat wat mam Kader bis elo geschitt ass.

D'Aféierung vun Angular huet zu engem Paradigmewiessel an der Webentwécklung gefouert: wärend déi meescht Bibliothéiken sech limitéiert hunn op Ënnerstëtzung fir Entwéckler mat relativ limitéierten architektoneschen Impakt ze bidden, ass d'Entwécklerenteam vun Angular an déi aner Richtung gaang. Hire Produkt zwéngt Iech eng spezifesch Architektur ze benotzen, mat Ofwäichungen, déi vu schwéier bis kommerziell sënnlos sinn. Tatsächlech leeft de meeschte Wénkelcode duerch e relativ komplexen Transpilatiouns-Toolchain ier et jeemools de Browser trëfft.

Wéinst dem enormen Erfolleg vun Angular, bannen an ausserhalb vu Google Inc, huet d'Entwécklung - am grousse Ganzen - stabiliséiert. Dëst bedeit datt d'Code Ännerunge wéineg sinn, wärend déi hallefjährlech Upgrades fokusséiert sinn op de Kader un d'Verännerunge vun der Internetsurfenlandschaft unzepassen.


Am Fall vun Angular 8 gëtt zum Beispill en neie JavaScript Compiler agesat (wann och nach experimentell). Et optiméiert generéiert Kompatibilitéitscode fir wesentlech méi kleng a méi séier op Käschte vun ale Browser ze sinn. Ausserdeem gëtt de Web Worker Support integréiert fir dem Angular seng Veraarbechtungsméiglechkeet ze erhéijen. Kuerz gesot, et ass vill ze gesinn - also loosst eis direkt dauchen.

Wann Dir léiwer e Site ouni Code designt, probéiert ee vun dësen einfache Websäit Builder. A fir d'Saache méi glat ze maachen, kritt Äre Webhosting Service richteg.

01. Féiert eng Versiounskontroll

Angular's Toolchain lieft am NodeJS Ëmfeld. Vun dësem Schreiwen ass Node.js 10.9 oder besser gebraucht - wann Dir Iech op enger aler Versioun fannt, besicht de Node.js Websäit a kritt en Upgrade. De Code hei ënnendrënner de Versiounsstatus op dëser Maschinn.

tamhan @ TAMHAN18: ~ $ node -v v12.4.0 tamhan @ TAMHAN18: ~ $ npm -v 6.9.0

02. Installéiert Wénkel

Angular's Toolchain wunnt an engem Kommandozeilennotz genannt ng. Et kann iwwer de bekannten NPM installéiert ginn.


tamhan @ TAMHAN18: ~ $ sudo npm installéieren -g @ eckeg / cli tamhan @ TAMHAN18: ~ $ ng Versioun

Sidd virsiichteg d'Fro am Bild hei ënnen ze beäntweren.

Versiounsinformatioun aus dem Tool kréien ass ganz schwéier - net nëmmen d'Syntax eenzegaarteg, awer d'Ausgab ass och verboss (kuckt d'Bild hei drënner).

03. Schafen e Projet Skelett

ng generéiert de Wénkelsteiger fir eis. An de folgende Schrëtt wëlle mir Routing bäifügen, a benotzen Sass fir CSS Transpilatioun. Sollt den Deplacement aus irgendege Grënn ausgefall sinn, eidel den Aarbechtsverzeechnes eidel, a neistarten ng mat Superuser Rechter.

tamhan @ TAMHAN18: ~ $ mkdir angularspace tamhan @ TAMHAN18: ~ $ cd angularspace / tamhan @ TAMHAN18: ~ / angularspace $ ng nei Workertest

04. Harness Differential Belaaschtung

Déi nei Versioun vum Angular optiméiert de Réckkompatibilitéitscode fir reduzéierten Impakt - eng Datei genannt Browser Lëscht léisst Dir entscheeden wéi eng Browser ënnerstëtzt ginn. Opmaachen Browser Lëscht an ewechzehuelen d'Wuert net virum IE 9 bis IE11.


. . . > 0,5% lescht 2 Versiounen Firefox ESR net dout IE 9-11 # Fir IE 9-11 Ënnerstëtzung, ewechhuelen 'net'.

05. ... a kuckt d'Resultater

Bestellt eng Kompiléierung vum Projet, ännert an de Verdeelungsdossier a läscht onnéideg Kaartendateien.

tamhan @ TAMHAN18: ~ / angularspace / workertest $ sudo ng bauen tamhan @ TAMHAN18: ~ / angularspace / workertest / dist / workertest $ ls

Opruff Bam fir d'Resultater ze gesinn - ng erstellt verschidde Versioune vu verschiddene Code Dateien (kuck d'Bild hei drënner).

06. Spawn e Webaarbechter

Webaarbechter loossen JavaScript déi lescht Grenz vun natierlechen Uwendungen aginn: massiv parallel Veraarbechtung vun Aufgaben. Mat Angular 8 kann e Webaarbechter direkt aus dem Komfort vun der erstallt ginn ng Kommandozeilennotz.

tamhan @ TAMHAN18: ~ / angularspace / workertest $ sudo ng generéiert Web-Worker myworker CREATE tsconfig.worker.json (212 Bytes) CREATE src / app / myworker.worker.ts (157 Bytes) UPDATE tsconfig.app.json (236 Bytes) ] UPDATE angular.json (3640 Bytes)

07. Entdeckt de Code

ngSeng Ausgab wäert wahrscheinlech op den éischte Bléck entimidéierend ausgesinn. Datei opmaachen src / app / myworker.worker.ts an engem Code Editor vun der Wiel verréid de Code deen Dir gutt vun der WebAarbechter Spezifizéierung. Prinzipiell kritt den Aarbechter Messagen a veraarbecht se wéi néideg.

/// Referenz lib = "webworker" /> addEventListener ('Message', ({data}) => {const response = `Aarbechter Äntwert op $ {data}`; postMessage (Äntwert);});

08. Gerüst astellen

Wénkel Uwendungen bestinn aus Komponenten. Ofzeschalten vun eisem Webaarbechter ass am beschten am AppComponent, deen erweidert gëtt fir en Nolauschterer fir de OnInit Manifestatioun. Fir elo wäert et nëmmen Statusinformatioun emittéieren.

importéiert {Component, OnInit} vun '@ angular / core'; @Component ({..}) Exportklass AppComponent implementéiert OnInit {title = 'workertest'; ngOnInit () {console.log ("AppComponent: OnInit ()"); }}

09. Maacht Iech keng Suergen iwwer de Mangel u Konstruktor

Erfuerene TypeScript Entwéckler froen sech firwat eise Code net den Konstruktor benotzt deen vun der Programmiersprache geliwwert gëtt. De Grond dofir ass dee ngOnInit ass e Liewenszyklus Event dat entlooss gëtt wann en Initialiséierungs Event stattfënnt - dëst muss net mat der Klass Uruff korreléiert ginn.

10. Féiert e klenge Kompiléierungslaf aus

Zu dësem Zäitpunkt ass de Programm fäerdeg ze lafen. Mir maachen et aus dem Server bannent ng, wat kann iwwer de Serv Kommando opgeruff ginn. E klengen Aspekt vun dëser Approche ass datt de Programm Ännerungen detektéiert an de Projet direkt flitt.

tamhan @ TAMHAN18: ~ / angularspace / workertest $ sudo ng servéieren

Kuckt d'Figur fir dëst an Handlung am Bild hei drënner ze gesinn.

11. ... a fënnt d'Ausgab

NG zerwéieren putputs d'Adress vu sengem lokale Webserver, wat normalerweis ass http: // localhost: 4200 /. Öffnen d'Websäit an öffnen d'Entwéckler Tools fir de Statusausgang ze gesinn. Bedenkt datt console.log gëtt Daten an d'Browser Konsol aus a léisst d'Konsole vun der NodeJS Instanz onberéiert.

12. Gitt op d'Aarbecht

Zu dësem Zäitpunkt kreéiere mir eng Instanz vum Aarbechter a ginn him eng Noriicht. Seng Resultater ginn dann an der Browser Konsol gewisen.

wann (typeof Worker! == 'ondefinéiert') {// Erstellt en neie Const Worker = neien Worker ('./ myworker.worker', {type: 'module'}); worker.onmessage = ({data}) => {console.log (’Säit krut Message: $ {data }’); }; Aarbechter.postMessage ('hallo'); } soss {console.log ("Keen Aarbechter Ënnerstëtzung"); }

13. Entdeckt Ivy

Zukünfteg Versioune vun Angular benotzen e méi fortgeschratte Compiler, wat zu nach méi klengen Usiichten féiert. Wärend de Produkt nach net fäerdeg ass, kann en Ivy-aktivéiert Skelett iwwer gespaut ginn ng nei Ivy-Projet - aktivéieren-Ivy. Alternativ ännert d'Compiler-Astellunge wéi am Snippet gewisen.

"angularCompilerOptions": {"enableIvy": richteg}

E Wuert vu Warnung: Ivy féiert zu erstaunlech Gréisstreduktiounen, awer et ass net gratis. D'Produkt huet sech nach stabiliséiert, sou datt et a produktiven Ëmfeld benotzt gëtt net recommandéiert.

14. Probéiert geännert ng Veraarbechtung

Wénkel’s ng Kommandozeilentool benotzt Kandskripter intern fir eng Zäit. Angular 8 hëlt d'Ante an datt Dir elo och dës Ariichtung benotze kënnt fir Är eegen Aufgaben auszeféieren wéi Är Uwendung zesummegesat a kompiléiert ass.

"architekt": {"build": {"builder": "@ angular-devkit / build-angular: browser",

Eng propper Uwendung vun ng Skripte beinhalt d'Uwendung vun Uwendungen u Cloud Servicer direkt. De Git Repository bitt e nëtzlecht Skript dat Är Aarbecht op e Firebase Kont eropluet.

15. Genéisst verbessert Migratioun

Entwéckler déi aus Angular 1.x wanderen, och bekannt als AngularJS, hunn e fairen Undeel u Probleemer gehat, fir datt de Navigator direkt an 'kombinéierten' Uwendungen funktionnéiert. Den neien Unified Location Service soll dëse Prozess méi glat maachen.

16. Entdeckt Aarbechtsberäich Kontroll

Grouss Projete profitéiere vun der Fäegkeet d'Aarbechtsberäichstruktur dynamesch z'änneren. Dëst gëtt iwwer déi nei Workspace API gemaach, déi am Angular 8.0 agefouert gouf - de Snippet mat dësem Schrëtt bitt e séieren Iwwerbléck iwwer d'Verhalen.

async Funktioun demonstriert () {const Host = Workspaces. createWorkspaceHost (nei NodeJsSyncHost ()); const Workspace = Aarbechtsraim waarden. readWorkspace (’path / to / workspace / directory /’, host); const Projet = workspace.projects. kréien ('meng App'); const buildTarget = project.targets. kréien ('bauen'); buildTarget.options.optimization = richteg; Waarden op Workspaces.writeWorkspace (Workspace, Host); }

17. Beschleunegt de Prozess

Grouss JavaScript Code Basen ze bauen gëtt langweileg. Zukünfteg Versioune vun AngularJS benotze Google's Bazel Build System fir de Prozess ze beschleunegen - leider, zum Schreiwe war et net prett fir Primetime.

18. Vermeit de Walking Dead

Och wann Google extrem Suergfalt hëlt kee Code ze briechen, musse verschidde Funktiounen einfach ewechgeholl ginn well se net méi gebraucht ginn. Kontrolléiert dës Ofschreiwungslëscht fir méi iwwer Features ze léieren déi vermeit solle ginn.

19. Kuckt de Change Log

Wéi ëmmer kann een Artikel ni enger ganzer Verëffentlechung gerecht ginn. Glécklecherweis gëtt dësen Ännerungsprotokoll eng detailléiert Lëscht vun allen Ännerungen - just am Fall wou Dir Iech iergendwann fillt de Puls vun enger Feature ze kontrolléieren déi Iech besonnesch léif ass.

Hutt Dir vill Dateie prett fir op Är Site eropzelueden? Setzt se zréck an déi verlässlechst Cloud Späichere.

Dësen Artikel gouf ursprénglech am kreativen Webdesign Magazin publizéiert Web Designer.

Populär Op Der Plaz
Wéi ee realistesche Sportsauto mécht
Liest Méi

Wéi ee realistesche Sportsauto mécht

An de le chte Joeren hunn ech meng Fäegkeeten an der Beleidegung an der Rendering wéi och e puer aner Techniken mat ver chiddenen Renderingmotoren wéi Arnold fir Maya, Renderman, V-Ray,...
Schéin geometresch Déierenlogoen
Liest Méi

Schéin geometresch Déierenlogoen

E Logo ze maachen deen erau técht - an net wéi eppe ruppeg au ge äit - a eng chwiereg Aufgab al De igner. Et gouf bewäert a gete t Methoden, déi duerch d'Jore ge chafft hu...
Wéi montéiert Dir Är Konschtwierker
Liest Méi

Wéi montéiert Dir Är Konschtwierker

Eng gutt au gefouert Montéierung a méi wéi nëmmen eng aner Kon chtechnik fir Ären Toolgurt bäizefügen. Et wäert eng ä thete ch Qualitéit fir Är A...