Programavimas

Kas naujo „Angular 9.1“

Atėjo „Angular 9.1“ su patobulinimais dėl našumo ir suderinamumo su „ngcc“ suderinamumo kompiliatoriumi. „Ivy“ kompiliavimo ir perteikimo dujotiekis taip pat sulaukė dėmesio, todėl rezultatai buvo geresni.

„Angular 9.1“, paskelbtas kovo 25 d., Seka „Angular 9.0“ leidimą, kuris tapo prieinamas kaip gamybinis leidimas 2020 m. Vasario 6 d. 9.0 versijos naujovinimas į populiarią „TypeScript“ pagrįstą sistemą pagal numatytuosius nustatymus perjungia programas į „Ivy“ kompiliatorių ir vykdymo laiką.

„Ivy“ siūlo greitesnį AOT rinkinį, taip pat mažesnius paketų dydžius, greitesnį testavimą ir geresnį derinimą. Patobulintas CSS klasės ir stiliaus įrišimas taip pat yra „Ivy“, taip pat patobulinami tipo tikrinimas, sukūrimo klaidos ir sukūrimo laikas. Taip pat dalis „Angular 9“ yraatnaujinimas, kuris žada būti patikimesnė ir informatyvesnė priemonė atnaujinant programas ir jų priklausomybes.

„Angular“ suteikia priklausomybės injekciją, kuri yra ypač naudinga renkant duomenų paslaugas programoms, kartu naudojant HTML šabloną komponentams kurti. Programoje „Angular“ kūrėjai vis dar komponuoja komponentus su HTML komponentu, kuris prisijungia prie „TypeScript“ kodo būtinosioms programos dalims.

Kur atsisiųsti „Angular 9.1“ ar ankstesnius leidimus

Galite atsisiųsti „Angular“ produkcijos leidimą iš „GitHub“, taip pat beta versijas. Buvo paskelbtas „Angular“ atnaujinimo vadovas kartu su naujinimo į „Angular 9“ vadovą.

Naujos „Angular 9.1“ funkcijos

  • Ngcc našumo optimizavimas, taip pat ngcc monorepo naudojimo atvejų sutapatinimo ir patikimumo patobulinimai. NPM postinstall scenarijus nebėra rekomenduojamas. Naudojant „ngcc“, asinchroninis apdorojimas pristabdomas, jei kitame procese yra užrakto failas. Be to, naudojant „ngcc“, šaltinio žemėlapio išlyginimo galimybė gali įkelti šaltinio žemėlapių sujungtų šaltinių failų medį ir suplakti juos į vieną šaltinio žemėlapį. Šis šaltinio žemėlapis tiesiai iš galutinio sugeneruoto failo susiejamas su pirminiais šaltiniais, nurodytais tarpinių šaltinių žemėlapiuose.
  • Palaikomas „TypeScript 3.8“.
  • Internacionalizacija per „i18n“ dabar palaiko RTL lokalės informaciją.
  • Ivy atlikimas buvo patobulintas pašalinus nenaudotą įvykio argumentą klausytojo instrukcijose. Anksčiau Ivy generavo $ renginys argumentas, net jei jo nenaudojo klausytojo posakiai. Tai gali sukelti nereikalingą baitų generavimą. Be to, buvo įtrauktas suderinamumo pataisymas „Ivy“ šablonams tikrinti.

Naujos „Angular 9.0“ funkcijos

Be „Ivy“ nustatymo kaip numatytąjį, „Angular 9.0“ apima šias naujas funkcijas ir patobulinimus:

  • Naujos parinktys numatytasIn, kuriant @ Injekcinis paslauga platforma, kuris teikia paslaugą specialiu pavienio platformos purkštuvu, kuriuo dalijasi visos puslapio programos, ir bet koks, kuris suteikia unikalų egzempliorių kiekviename modulyje, įvedančiame prieigos raktą.
  • Komponentų diržai, siekiant užtikrinti, kad vieneto bandymai būtų tinkamai nustatyti ir būtų mažiau trapūs. Išsamesnė informacija apie įgyvendinimą.
  • Nauji komponentai, leidžiantys įtraukti „YouTube“ ir „Google“ žemėlapių galimybes į programas.
  • Palaikomi „TypeScript 3.7“ ir „TypeScript 3.6“.
  • Patobulintas renginių klausytojų pasirodymas.
  • Numatytasis valiutos kodas „CurrencyPipe“ dabar yra konfigūruojamas.
  • Norint pagerinti „Ivy“ pateikimo našumą, pakartotinės visuotinės būsenos prieigos pašalinamos iš „i18n“ instrukcijų, kai informacija jau yra prieinama. Ivy taip pat padidina našumą pašalindama papildomą „SafeDetection“ kodas. „Angular / localize“ paketą galima pridėti prie „Angular CLI“ projekto per pridėti.
  • Taip pat „Ivy“ atvaizdavimui siūlomi geresni klaidų pranešimai nežinomiems komponentams. Be to, buvo pridėta nauja vėliava lokalizuoti-išversti kuri leidžia nurodyti šaltinio lokalę.
  • Norint pagerinti šerdies našumą, „Ivy“ atvaizdavimo sistemoje dezinfekcija tampa nepastovi.
  • Taip pat „Ivy“ šablonų tipo tikrinimas buvo pakeistas, kad būtų sukurta „ts.Diagnostics“. Tai lemia dizaino problemą, kai „Angular“ kompiliatorius sukūrė tiek natūralią „TypeScript“ diagnostiką, tiek savo vidinės diagnostikos formatą, kuris nebuvo optimalus.
  • Taip pat šerdies atžvilgiu „Angular“ prideda naują perkėlimo schemą, kaip numatyta pateiktame perkėlimo plane.
  • „NgFormSelectorWarning“ parinkiklis buvo pašalintas.
  • „Ngcc“ (suderinamumo kampiniu kompiliatoriumi) perkėlimas buvo įtrauktas į nepuoštų vaikų klases.
  • Ivy, kompiliatoriui, core, language-service, ngcc ir Bazel buvo padaryta keletas klaidų taisymų.

Naujos „Angular 8.2“ funkcijos

Išleista 2019 m. Rugpjūčio mėn., Kampinė versija 8.2 apima:

  • Norint pagerinti kompiliatoriaus našumą, klonuojant objektą vengiama kopijuoti iš prototipo. Tai atnaujina „ApplySourceSpanTransformer“ klasės, kur buvo naudojama for-in kilpa, klono funkciją, kurios rezultatas buvo kopijavimas iš prototipo į savo ypatybes, sunaudojant daugiau atminties.
  • „TypeScript 3.5“ palaikymas.
  • „Kythe“ įrankių naudojamų taikinių su „Ivy“ atvaizdavimo rinkiniu sudarymas. Tai pašalina problemas, susijusias su kryžminėmis nuorodomis į tranzityvias priklausomybes, nes nėra sukurta dėl to, kaip senosios kompiliatorius įkelia šias priklausomybes.
  • Parama $ elementas atnaujintame komponente šabloną ir templateURL funkcijos.
  • „Bazel“ vartotojai dabar gali perduoti pasirinktinį „Bazel CompilerHost“ kampiniam kompiliavimui, palaikydami „TypeScript“ kompiliatoriaus pagrindinio kompiuterio nepaisymą.
  • Daugybė klaidų taisymų, įskaitant atminties limito padidinimą ngc pagal „Bazel“ nuo 2 GB iki 4 GB.

Naujos „Angular 8.1“ funkcijos

  • Testavimo pagalbininkai yra skirti atnaujinimo / statinei bibliotekai, kuri sujungia kampinius ir „AngularJS“ purkštukus, nereikalaujant pilno hibridinės programos paleidimo.
  • Nebeveikia integracija su „Web Tracing Framework“, kurią „Angular“ anksčiau palaikė atlikdama našumo testavimą. „Angular“ kūrėjų komanda pažymėjo, kad integracija nebuvo išlaikyta ir šiandien greičiausiai neveikia daugelyje „Angular“ programų.
  • Įgyvendinimas definitionAndBoundSpan, kuriai dabar teikiama pirmenybė apibrėžimas. Programos įgyvendinimas apibrėžimas buvo pertvarkytas ir supaprastintas.
  • „Platform-webworker“ API nebenaudojama. Šios paramos įtraukimas buvo eksperimentinis, bandant paleisti visą programą „Web Worker“, kad žiniatinklio turinys galėtų paleisti foninius scenarijus. Kampiniai šalininkai to nebesiekia.

„Angular 8.1“ taip pat siūlo „Bazel build“ įrankio, taip pat „Angular core“ ir maršrutizatoriaus klaidų taisymus.

Naujos „Angular 8.0“ funkcijos

„Angular 8“ patobulinimai, išleisti 2019 m. Gegužės mėn., Apima: