在過(guò)去的一年里,Angular 團(tuán)隊(duì)刪除了 Angular 的傳統(tǒng)編譯器和渲染管道,因此在過(guò)去幾個(gè)月里 Angular 改進(jìn)了一系列與開(kāi)發(fā)者體驗(yàn)相關(guān)的內(nèi)容。Angular v15 則是進(jìn)一步推動(dòng)了這項(xiàng)工作,它有幾十項(xiàng)改進(jìn),使開(kāi)發(fā)者有更好的體驗(yàn)和性能。
獨(dú)立 API 脫離開(kāi)發(fā)者預(yù)覽版
在 Angular 14 中,引入了新的獨(dú)立 API,使開(kāi)發(fā)者能夠在不使用 NgModules 的情況下構(gòu)建應(yīng)用程序。如今在 Angular 15 中,這些 API 已經(jīng)脫離了開(kāi)發(fā)者預(yù)覽,現(xiàn)在是穩(wěn)定的 API 的一部分。從現(xiàn)在開(kāi)始,我們將按照語(yǔ)義版本的方式逐步改進(jìn)它們。
Directive composition API
指令組合式 API(Directive composition API) 將代碼重用帶到了另一個(gè)層次,這項(xiàng)功能的靈感來(lái)自于 GitHub 上最受歡迎的功能請(qǐng)求(feature request),該請(qǐng)求要求提供向宿主元素(Host Element)添加指令的功能。 指令組合式 API 使開(kāi)發(fā)者能夠用指令來(lái)增強(qiáng)宿主元素,并為 Angular 配備了強(qiáng)大的代碼重用策略,指令組合 API 只適用于獨(dú)立的指令。
Image 指令現(xiàn)在穩(wěn)定了
在 Angular 14.2 中,Angular 帶來(lái)了與 Chrome Aurora 合作開(kāi)發(fā)的 Angular image 指令的開(kāi)發(fā)者預(yù)覽版。
如今在 Angular 15 中,該指令現(xiàn)在已經(jīng)達(dá)到穩(wěn)定了,Land's End 對(duì)這一功能進(jìn)行了實(shí)驗(yàn),在 lighthouse lab 測(cè)試中觀察到 LCP 有 75% 的改善。
更好的堆棧跟蹤
Angular 團(tuán)隊(duì)從每年的開(kāi)發(fā)者調(diào)查中得到了很多啟示,在深入研究開(kāi)發(fā)者面臨的調(diào)試難題后,團(tuán)隊(duì)發(fā)現(xiàn)錯(cuò)誤信息可能需要得到一些改進(jìn)。
餅狀圖顯示,大多數(shù)開(kāi)發(fā)者在理解 Angular 中的錯(cuò)誤信息時(shí)都很困難。因此 Angular 與 Chrome DevTools 合作來(lái)解決這個(gè)問(wèn)題。 示例:
ERROR Error: Uncaught (in promise): Error Error at app.component.ts11 at Generator.next (
只有一行對(duì)應(yīng)于開(kāi)發(fā)人員編寫的代碼。其他一切都來(lái)自第三方依賴項(xiàng)(Angular 框架、Zone.js、RxJS)
沒(méi)有關(guān)于導(dǎo)致錯(cuò)誤的用戶交互的信息
Chrome DevTools 團(tuán)隊(duì)創(chuàng)建了一種機(jī)制,通過(guò) Angular CLI 注釋 source maps 來(lái)忽略來(lái)自node_modules的腳本。還合作開(kāi)發(fā)了一個(gè)異步堆棧標(biāo)記 API,允許我們將獨(dú)立的、預(yù)定的異步任務(wù)連接成一個(gè)堆棧跟蹤。
將基于 MDC 的組件發(fā)布到穩(wěn)定版
我們很高興地宣布,基于 Material Design Components for Web(MDC)的 Angular material 組件的重構(gòu)工作已經(jīng)完成。這一變化使 Angular 更加接近 Material Design 規(guī)范。 對(duì)于許多組件,Angular 更新了樣式和 DOM 結(jié)構(gòu),而其他組件則從頭開(kāi)始重寫了。Angular 為新組件保留了大部分 TypeScript API 和組件 / 指令選擇器,與舊的實(shí)現(xiàn)方式相同。
實(shí)驗(yàn)性 esbuild 支持的改進(jìn)
在 Angular 14 中,Angular 帶來(lái)了在ng build中實(shí)驗(yàn)性地支持 esbuild,以實(shí)現(xiàn)更快的構(gòu)建時(shí)間并簡(jiǎn)化 Angular 管道。 在 v15 中,現(xiàn)在有了實(shí)驗(yàn)性的 Sass、SVG 模板、文件替換和ng build --watch支持。
語(yǔ)言服務(wù)中的自動(dòng)導(dǎo)入
語(yǔ)言服務(wù)現(xiàn)在可以自動(dòng)導(dǎo)入你在模板中使用但沒(méi)有添加到獨(dú)立組件或 NgModule 中的組件。
CLI 改進(jìn)
在 Angular CLI 中,引入了對(duì)獨(dú)立穩(wěn)定 API 的支持。現(xiàn)在你可以通過(guò)ng g component --standalone生成一個(gè)新的獨(dú)立組件。 Angular 也在進(jìn)行簡(jiǎn)化ng new輸出的任務(wù)。作為第一步,通過(guò)刪除test.ts、polyfills.ts和environments來(lái)減少配置?,F(xiàn)在你可以直接在angular.json中的polyfills部分指定你的 polyfills。
"polyfills": [ "zone.js" ]為了進(jìn)一步減少配置開(kāi)銷,現(xiàn)在使用.browserlist來(lái)讓你定義目標(biāo) ECMAScript 版本。
社區(qū)貢獻(xiàn)
自 v14 發(fā)布以來(lái),Angular 收到了 210 多人對(duì)框架、組件和 CLI 的貢獻(xiàn)。
-
API
+關(guān)注
關(guān)注
2文章
1518瀏覽量
62449 -
指令
+關(guān)注
關(guān)注
1文章
611瀏覽量
35842 -
編譯器
+關(guān)注
關(guān)注
1文章
1642瀏覽量
49317 -
組件
+關(guān)注
關(guān)注
1文章
518瀏覽量
17938 -
angular
+關(guān)注
關(guān)注
0文章
4瀏覽量
3060
原文標(biāo)題:Angular v15 正式發(fā)布
文章出處:【微信號(hào):OSC開(kāi)源社區(qū),微信公眾號(hào):OSC開(kāi)源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
詳解deepin 25 Preview的Treeland窗口合成器
![詳解deepin 25 Preview的Treeland窗口合成器](https://file1.elecfans.com/web3/M00/06/F7/wKgZO2eRmliAfVzkAAAtbTQ7rBA139.png)
電流是ADS1256內(nèi)部采樣電容的充電電流,那么方向應(yīng)該是流進(jìn)輸入腳而不是流出,這到底是怎么回事?
基于TPS40055的設(shè)計(jì)在15安培時(shí)將12V總線轉(zhuǎn)換為1.8V
![基于TPS40055的設(shè)計(jì)在<b class='flag-5'>15</b>安培時(shí)將12<b class='flag-5'>V</b>總線轉(zhuǎn)換為1.8<b class='flag-5'>V</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
機(jī)器視覺(jué) 歡創(chuàng)播報(bào) 小米15系列正式發(fā)布
![機(jī)器視覺(jué) 歡創(chuàng)播報(bào) 小米<b class='flag-5'>15</b>系列正式<b class='flag-5'>發(fā)布</b>](https://file1.elecfans.com//web1/M00/F4/0A/wKgZoWcjKE-ADhGKAABA4Mo7IeU52.webp)
小米15系列及新品發(fā)布會(huì)官宣
具有3.3V/5V輸入和12V/15V輸出的信號(hào)和電源隔離
![具有3.3<b class='flag-5'>V</b>/5<b class='flag-5'>V</b>輸入和12<b class='flag-5'>V</b>/<b class='flag-5'>15V</b>輸出的信號(hào)和電源隔離](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
dsp28377D如何把雙極性設(shè)置為-15到+15v?
15W電源方案CR6212SJ+CR40V15RSA-PCB圖
15W電源方案CR6212SJ+CR40V15RSA-原理圖
【新品發(fā)布】HS1010型±15V精密單刀單擲模擬開(kāi)關(guān)
![【新品<b class='flag-5'>發(fā)布</b>】HS1010型±<b class='flag-5'>15V</b>精密單刀單擲模擬開(kāi)關(guān)](https://file.elecfans.com/web2/M00/54/C0/poYBAGLZFNiAf0mrAAAhnv3uRvM405.png)
最近國(guó)產(chǎn)的rsic-v的mcu有什么新品發(fā)布
1200V 15A溝槽和場(chǎng)阻IGBT JJT15N120SE數(shù)據(jù)手冊(cè)
650V 15A溝槽和場(chǎng)阻IGBT JJT15N65SY數(shù)據(jù)手冊(cè)
650V 15A溝槽和場(chǎng)阻IGBT JJT15N65SC數(shù)據(jù)手冊(cè)
Android 15的首個(gè)開(kāi)發(fā)者預(yù)覽版現(xiàn)已發(fā)布
![Android <b class='flag-5'>15</b>的首個(gè)開(kāi)發(fā)者預(yù)覽版現(xiàn)已<b class='flag-5'>發(fā)布</b>](https://file1.elecfans.com/web2/M00/C3/F9/wKgZomXv83SAPKC7AAB0OyWZuBM240.jpg)
評(píng)論