最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Angular16如何獲取路由參數(shù)

 更新時間:2023年07月27日 08:48:37   作者:cipchk  
這篇文章主要為大家介紹了Angular16如何獲得路由參數(shù)的實(shí)現(xiàn)方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

引言

Anguar 16 引入一個有趣的功能,可以將路由器數(shù)據(jù)直接通過 @Input 來綁定,例如:QueryString,路由參數(shù),data 靜態(tài)數(shù)據(jù)。

舊寫法

在 Angular 16 之前,需要通過 ActivatedRoute 來獲取這些數(shù)據(jù)。假設(shè)有這么一個路由配置:

{ 
  path: ':type', 
  component: TestComponent,
  data: { role: 'admin' }
}

并通過以下訪問路由時:

/weixin?uid=1&allow=false

我們可以透過注入 ActivatedRoute 并分別從 dataparams、queryParams 獲取到所需要的數(shù)據(jù)。

倘若,你想監(jiān)聽 params 數(shù)據(jù)的變化,還需要單獨(dú)為訂閱處理;

除此之外,除 data 以外,其他數(shù)據(jù)類型都是自動轉(zhuǎn)成 string,反正到這里我已經(jīng)很煩人了。

新方式

從 Angular 16 開始這些參數(shù)都可以自動綁定到 @Input 輸入?yún)?shù)當(dāng)中??梢酝ㄟ^ bindToComponentInputs 激活這個有趣的新功能,就像這樣:

RouterModule.forRoot(routes, {
  bindToComponentInputs: true
});

# Sandalone 版本
provideRouter([], withComponentInputBinding())

寫法也非常簡單:

@Input() type = '';
@Input() role = '';
@Input({ transform: numberAttribute }) uid = 0;
@Input({ transform: booleanAttribute }) allow = false;

 注:transform 參數(shù)是 Angular 16.1 以上新的改進(jìn),可以極大的簡化編寫 getset。

當(dāng)然,當(dāng)路由發(fā)生變更時 @Input 也會自動更新,你可以通過 ngOnChanges 來知曉,也可以利用 get、set 寫法。

以上就是詳解Angular16如何獲取路由參數(shù)的詳細(xì)內(nèi)容,更多關(guān)于Angular16獲取路由參數(shù)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論

灵璧县| 盱眙县| 喀喇沁旗| 牙克石市| 杂多县| 辰溪县| 廉江市| 辰溪县| 化德县| 涞水县| 清丰县| 石泉县| 阿尔山市| 安化县| 宁德市| 美姑县| 遂昌县| 道孚县| 马边| 绥中县| 安义县| 辰溪县| 区。| 始兴县| 河南省| 名山县| 黄大仙区| 手游| 崇文区| 清涧县| 贺州市| 栾川县| 罗源县| 堆龙德庆县| 宜良县| 灵璧县| 兴城市| 安宁市| 荥经县| 天台县| 阜阳市|