久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長(zhǎng)資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

如何利用管道提高Angular應(yīng)用程序的性能?

如何利用管道提高Angular應(yīng)用程序的性能?本篇文章通過(guò)代碼示例來(lái)給大家詳細(xì)介紹一下利用管道提高Angular應(yīng)用程序性能的方法。

如何利用管道提高Angular應(yīng)用程序的性能?

我們通過(guò)一個(gè)例子來(lái)演示下:

Example

@Component({   selector: 'my-app',   template: `     <p *ngFor="let user of users">       {{ user.name }}有一只貓 {{ getCat(user.id).name }}     </p>   `,   styleUrls: ['./app.component.css'] }) export class AppComponent {   users = [{ id: 1, name: 'wang' }, { id: 2, name: 'li' }];   cats = [{ name: 'Tom', userId: 1 }, { name: 'Jerry', userId: 2 }];    getCat(userId: number) {     console.log('User', userId);     return this.cats.find(c => c.userId === userId);   } }

有兩組數(shù)據(jù)分別是 userscats,可以把 users 理解為傳入數(shù)據(jù),或者是其他數(shù)據(jù)源。通過(guò) getCat() 方法獲取對(duì)應(yīng)的 貓咪,這種場(chǎng)景再業(yè)務(wù)開(kāi)發(fā)中再熟悉不過(guò)。 最后添加全局模板直接進(jìn)行一個(gè)循環(huán)輸出。【相關(guān)教程推薦:《angular教程》】

接下來(lái)看下輸出

User 1 User 2 User 1 User 2 User 1 User 2 User 1 User 2

可以 getCat() 方法調(diào)用了 8 次,有 6 次無(wú)用調(diào)用。這是因?yàn)楫?dāng)在模板內(nèi)使用方法時(shí),angular 每次變更檢測(cè)都會(huì)調(diào)用其方法。

我們可以添加一個(gè)監(jiān)聽(tīng)事件

@HostListener('click') clicked() { }

每當(dāng)點(diǎn)擊事件觸發(fā),就會(huì)調(diào)用 4

User 1 User 2 User 1 User 2

這不是我想要,我只想讓它調(diào)用兩次啊!!!數(shù)據(jù)量大了這么玩頂不住。


Pure Pipe

接下來(lái)就是主角登場(chǎng)了。我們先創(chuàng)建一個(gè) pipe

@Pipe({   name: 'cat', }) export class CatPipe implements PipeTransform {   constructor(private appComponent: AppComponent) {}    transform(value, property: 'name' | 'userId'): unknown {     console.log('User', value);     const cat = this.appComponent.cats.find(c => c.userId === value);     if (cat) {       return cat[property];     }   } }

可以看到 pipe 的實(shí)現(xiàn)與之前調(diào)用的方法基本是一樣的,在模板中添加引用之后,卻發(fā)現(xiàn)結(jié)果符合之前的預(yù)期了,只調(diào)用了兩次。

這是因?yàn)?pipe 默認(rèn)是 pure pipe,且 Pipe 裝飾器有 pure 可用來(lái)設(shè)置管道模式。

@Pipe({   name: 'cat',   pure: true })

pure 表示的是: transform 的值(入?yún)alue)發(fā)生變化時(shí)是否 不跟隨變更檢測(cè)調(diào)用

官方解釋?zhuān)喝绻摴艿谰哂袃?nèi)部狀態(tài)(也就是說(shuō),其結(jié)果會(huì)依賴(lài)內(nèi)部狀態(tài),而不僅僅依賴(lài)參數(shù)),就要把 pure 設(shè)置為 false。 這種情況下,該管道會(huì)在每個(gè)變更檢測(cè)周期中都被調(diào)用一次 —— 即使其參數(shù)沒(méi)有發(fā)生任何變化。 When true, the pipe is pure, meaning that the transform() method is invoked only when its input arguments change. Pipes are pure by default.

當(dāng)把 pure 改成 false,會(huì)隨變更檢測(cè)調(diào)用多次,不管值發(fā)生變化沒(méi)。

了解變更檢測(cè)機(jī)制:

[譯]深入理解Angular onPush變更檢測(cè)策略

https://zhuanlan.zhihu.com/p/96486260

這樣我們通過(guò) pipe 代替模板中的方法,就減少了 angular 模板中不必要的調(diào)用。

總結(jié)

當(dāng)模板中數(shù)據(jù)為靜態(tài)數(shù)據(jù)需要轉(zhuǎn)換或加工時(shí),調(diào)用pipe比調(diào)用方法好。

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
在线一区免费观看| 美女久久网站| 欧美午夜精品一区二区三区电影| 久久不见久久见免费视频7| 高清av不卡| 欧美亚洲tv| 麻豆中文一区二区| 激情五月综合| 日韩欧美高清一区二区三区| 亚洲精品成人一区| 综合日韩在线| 日本va欧美va精品| 亚洲三级精品| 日本综合精品一区| 97精品久久| 国产免费久久| 国精品产品一区| 色综合五月天| 久久婷婷丁香| 国产婷婷精品| 亚洲日本三级| 青青草91视频| 美日韩一区二区三区| 久久天堂av| 亚洲精品**中文毛片| 青青草91视频| 欧美男人天堂| 国产精品一区二区精品视频观看 | 久久精品99久久久| 久久中文在线| 欧美日韩一二三四| 亚洲精品人人| 精品资源在线| 美女少妇全过程你懂的久久| 99久久精品国产亚洲精品| 国产偷自视频区视频一区二区| 日韩一区二区三区精品视频第3页| 国产精品国产三级在线观看| 亚洲涩涩在线| 蜜桃一区二区三区在线观看| 国产剧情在线观看一区| av资源中文在线| 亚洲美洲欧洲综合国产一区| 四虎精品永久免费| 久久久久久久欧美精品| 午夜久久tv| 欧美日本久久| 激情国产在线| 日韩精品一二区| 国产欧美大片| 欧美日韩国产一区二区三区不卡 | 日韩国产在线观看一区| 久久亚洲精品中文字幕| 亚洲成人免费| 国产精品伦一区二区| а√天堂8资源中文在线| 在线看片日韩| 中文字幕系列一区| 亚洲欧美日本视频在线观看| 国产66精品| 亚洲永久字幕| 欧美日韩18| 日本不良网站在线观看| 美女尤物久久精品| 国产美女高潮在线观看| 日韩福利视频网| 国产精品一区二区精品视频观看| 亚洲午夜av| 国产亚洲一区| 国产亚洲在线观看| 69精品国产久热在线观看| 亚洲五月婷婷| 精品视频亚洲| 亚洲精品日本| 国精品一区二区| 国产精品1区| 蜜桃视频一区二区三区 | 精品日韩一区| 亚洲久久视频| 久久亚洲国产| 精品午夜av| 日本成人在线一区| 久久精品不卡| 国产精品777777在线播放| 天堂av在线一区| 久久狠狠婷婷| 粉嫩av一区二区三区四区五区| 亚洲精品看片| 欧美国产极品| 国产精品原创| 欧美一区自拍| 国产日韩高清一区二区三区在线 | 日韩欧美在线精品| 高潮久久久久久久久久久久久久| 亚洲欧洲另类| 久久亚洲精品伦理| 国产模特精品视频久久久久| 狠狠操综合网| 视频一区二区国产| 免费人成精品欧美精品| 日韩欧美中文在线观看| 国产精品2区| 国产videos久久| 成人高清一区| 亚洲精品乱码| 神马久久午夜| 日本欧美一区二区| 肉色欧美久久久久久久免费看 | 亚洲免费毛片| 福利一区在线| 国产精品天堂蜜av在线播放| 男女激情视频一区| 久久九九国产| 美女久久久久| 亚洲va中文在线播放免费| 久久精品国产99国产| 国产色99精品9i| 久久国产麻豆精品| 国产日韩欧美在线播放不卡| 88久久精品| 亚洲男人在线| 综合色一区二区| 黄色av一区| 精品一区av| 日韩国产在线一| 久久国产精品99国产| 免费人成精品欧美精品| 午夜欧美视频| 久久国产精品成人免费观看的软件| 日韩电影免费网址| 成人影视亚洲图片在线| 精品一区二区三区视频在线播放| 91亚洲一区| 欧美不卡在线| 久久国产精品色av免费看| 日韩av中文在线观看| 国产在线视频欧美一区| 91久久中文| 国产成人免费视频网站视频社区| 免费国产亚洲视频| 国产精品麻豆成人av电影艾秋| 国产精品日韩欧美一区| 精品久久网站| 久久av综合| 亚洲精一区二区三区| 国产成人精品亚洲日本在线观看| 99久久激情| 日韩国产在线| 亚洲婷婷免费| 美国三级日本三级久久99| 亚洲欧美成人综合| 日韩精品一二三区| 国产精品一区高清| 亚洲精品成人图区| 女同性一区二区三区人了人一 | 精品淫伦v久久水蜜桃| 中文字幕在线官网| 婷婷色综合网| 日韩精品久久久久久| 国产精品网在线观看| 日韩一区二区在线免费| 好看不卡的中文字幕| 欧美日韩视频网站| 视频一区中文字幕精品 | 性一交一乱一区二区洋洋av| 日韩av网站在线免费观看| 91亚洲国产成人久久精品| 日韩不卡手机在线v区| 亚洲福利专区| 成人午夜在线| 欧美日韩视频免费看| 久久久久国产| 岛国av在线播放| 久久精品网址| 在线一区视频观看| а√天堂8资源在线| 久久中文视频| 美国三级日本三级久久99 | 亚洲免费激情| 一本色道久久精品| 日本91福利区| 欧美三区不卡| 日本视频一区二区| 欧美一区在线观看视频| 在线亚洲人成| 亚洲一级大片| 久久只有精品| 国产在线成人| 国产日韩欧美一区二区三区在线观看 | 噜噜噜久久亚洲精品国产品小说| 天堂√8在线中文| 天堂精品久久久久| 日韩精品免费一区二区三区| 日韩av一区二区在线影视| 日韩深夜视频| 国产情侣一区| 99精品99| 国产精品亚洲成在人线| 成人av二区| 久久国产欧美|