Programovanie

Čo je nové v Angular 9.1

Prišiel Angular 9.1 s vylepšením výkonu a súbežnosti kompilátora kompatibility ngcc. Pozornosť si získala aj kompilácia a vykresľovanie kanálu Ivy, čo viedlo k lepšiemu výkonu.

Angular 9.1, publikovaný 25. marca, nadväzuje na vydanie Angular 9.0, ktoré bolo dostupné ako produkčné vydanie 6. februára 2020. Upgrade na populárny framework založený na TypeScript verzie 9.0 prepína aplikácie predvolene na kompilátor Ivy a runtime.

Ivy ponúka rýchlejšiu kompiláciu AOT, ako aj menšie veľkosti balíkov, rýchlejšie testovanie a lepšie ladenie. Vylepšená väzba triedy a štýlu CSS je uvedená aj v Ivy spolu s vylepšeniami v kontrole typu, chybách zostavenia a časoch zostavenia. Súčasťou Angular 9 je tiežng aktualizácia, ktorá sľubuje spoľahlivejší a informatívnejší nástroj na aktualizáciu aplikácií a ich závislostí.

Angular poskytuje vkladanie závislostí, čo je obzvlášť užitočné pri zostavovaní dátových služieb pre aplikácie, spolu s použitím šablóny HTML na zostavenie komponentov. V Angular vývojári stále skladajú komponenty s komponentom HTML, ktorý sa pripája k kódu TypeScript pre imperatívne časti programu.

Kam sťahovať Angular 9.1 alebo predchádzajúce vydania

Môžete si stiahnuť produkčné vydanie Angular z GitHubu, ako aj beta verzie. Bola publikovaná príručka pre aktualizáciu Angular spolu s príručkou pre upgrade na Angular 9.

Nové funkcie v Angular 9.1

  • Optimalizácia výkonu pre ngcc, ako aj vylepšenia súbežnosti a spoľahlivosti pre prípady použitia ngcc monorepo. Skript po inštalácii NPM sa už neodporúča. Pri ngcc sa asynchronné spracovanie pozastaví, ak má iný proces zámkový súbor. Tiež s ngcc je schopnosť zlúčenia zdrojovej mapy schopná načítať strom zdrojových súborov spojených zdrojovými mapami a zlúčiť ich do jednej zdrojovej mapy. Táto zdrojová mapa mapuje priamo z finálneho vygenerovaného súboru do pôvodných zdrojov, na ktoré odkazujú prechodné zdrojové mapy.
  • TypeScript 3.8 je podporovaný.
  • Internacionalizácia prostredníctvom i18n teraz podporuje miestne informácie RTL.
  • Výkon brečtanu sa zlepšil odstránením nepoužívaného argumentu udalosti v pokynoch pre poslucháčov. Predtým Ivy generovala $ udalosť argument, aj keď ho poslucháčske výrazy nepoužívali. To by mohlo viesť k zbytočnému generovaniu bajtov. Zahrnutá bola aj oprava kompatibility pre kontrolu šablón Ivy.

Nové funkcie v Angular 9.0

Okrem nastavenia Ivy ako predvoleného obsahuje Angular 9.0 nasledujúce nové funkcie a vylepšenia:

  • Nové možnosti pre poskytnutéIn, na vytvorenie @Injectable služba, zahrnúť plošina, ktorý sprístupňuje službu v špeciálnom injektore platformy singleleton zdieľanom všetkými aplikáciami na stránke, a akýkoľvek, ktorá poskytuje jedinečnú inštanciu v každom module, ktorý vloží token.
  • Postroje komponentov, aby sa zabezpečilo, že testy jednotky sú správne vymedzené a menej krehké. Podrobnosti o implementácii sa odoberú.
  • Nové komponenty umožňujúce zahrnutie funkcií YouTube a Mapy Google do aplikácií.
  • Podporované sú TypeScript 3.7 a TypeScript 3.6.
  • Pre eventListeners sa zlepšil výkon.
  • Predvolený kód meny v CurrencyPipe je teraz konfigurovateľný.
  • Na zlepšenie výkonu vykresľovača Ivy sú z pokynov i18n odstránené opakované globálne prístupy, keď sú informácie už k dispozícii. Ivy tiež zvyšuje výkon odstránením doplnkov SafeDetection kód. A balíček @ angular / localize je možné pridať do projektu Angular CLI cez ng pridať.
  • Aj pre vykresľovač Ivy sú pre neznáme komponenty ponúkané lepšie chybové správy. Okrem toho bola do vlajky pridaná nová vlajka lokalizovať-preložiť ktorý umožňuje určiť miestne nastavenie zdroja.
  • Aby sa zlepšil výkon v jadre, dezinfekcia sa v renderovacom serveri Ivy stáva otrasiteľným.
  • Aj v Ivy sa zmenila kontrola typu šablóny, aby sa vytvorila ts.Diagnostics. Toto opravuje problém s dizajnom, v ktorom kompilátor Angular vytvoril natívnu diagnostiku TypeScript a vlastný formát internej diagnostiky, ktorý nebol optimálny.
  • Aj pre jadro Angular pridáva novú schému migrácie podľa daného migračného plánu.
  • The NgFormSelectorWarning selektor bol odstránený.
  • Pre ngcc (prekladač uhlovej kompatibility) bola pridaná migrácia pre nedekorované podradené triedy.
  • Pre Ivy, kompilátor, jadro, jazykovú službu, ngcc a Bazel bolo urobených niekoľko opráv chýb.

Nové funkcie v Angular 8.2

Uhlová verzia 8.2, ktorá bola vydaná v auguste 2019, obsahuje:

  • Na zlepšenie výkonu kompilátora sa pri klonovaní objektu zabráni kopírovaniu z prototypu. Týmto sa aktualizuje klonová funkcia triedy ApplySourceSpanTransformer, kde sa použila slučka for-in, ktorej výsledkom bolo kopírovanie z prototypu do vlastných vlastností, ktoré spotrebovalo viac pamäte.
  • Podpora TypeScript 3.5.
  • Kompilovanie cieľov používaných nástrojmi Kythe s vykresľovačom Ivy. To eliminuje problémy s tým, že sa negenerujú krížové odkazy na tranzitívne závislosti, kvôli tomu, ako tieto závislosti načítava starší kompilátor.
  • Podpora pre $ element v inovovanej súčasti šablóna a templateURL funkcie.
  • Pre Bazel teraz môžu používatelia odovzdať vlastný Bazel CompilerHost pre uhlovú kompiláciu, ktorý podporuje prepísanie hostiteľa kompilátora TypeScript.
  • Počet opráv chýb, vrátane zvýšenia limitu pamäte pre ngc pod Bazel od 2GB do 4GB.

Nové funkcie v Angular 8.1

  • Pre aktualizačnú / statickú knižnicu sú k dispozícii testovací pomocníci, ktorí pripájajú injektory Angular a AngularJS bez potreby úplného bootstrapu hybridnej aplikácie.
  • Ukončenie podpory integrácie s Web Tracing Framework, ktorú spoločnosť Angular predtým podporovala pri testovaní výkonu. Vývojový tím Angular poznamenal, že integrácia nebola zachovaná a pravdepodobne dnes nefunguje pre väčšinu aplikácií Angular.
  • Implementácia definitionAndBoundSpan, ktorý je teraz uprednostňovaný pred definícia. Vykonávanie definícia bol prepracovaný a zjednodušený.
  • Ukončenie podpory rozhraní API platformy webový pracovník. Zahrnutie tejto podpory bolo experimentálne, aby sa pokúsilo spustiť celú aplikáciu vo webovom pracovníkovi, aby webový obsah mohol spúšťať skripty na pozadí. Úhloví navrhovatelia sa to už nesnažia.

Angular 8.1 tiež ponúka opravy chýb pre nástroj na vytváranie Bazel, ako aj pre Angular core a router.

Nové funkcie v Angular 8.0

Vylepšenia v Angular 8, vydané v máji 2019, zahŕňajú nasledujúce:

$config[zx-auto] not found$config[zx-overlay] not found