0
A
回答
1
通過使用尾部斜線定義路線,然後確保使用斜槓導航到網址,可以達到預期的效果。這很可能會導致一些令人頭痛的問題,因爲路由器會比預期的更深一層,因爲後面的斜線。
路線{
path: 'a/',
component: AComponent
},
{
path: 'list/b/',
component: BComponent,
}
你可以得到路由器由定義的路徑後添加一個空字符串路徑添加結尾的斜線。如果你自己寫斜槓,就像[routerLink]="['/a/']"
角將會刪除它。
<p><a [routerLink]="['/a', '']">Component A</a></p>
或
<p><a [routerLink]="['../a', '']">Component A</a></p>
編程方式導航
this.router.navigate(['/a', '']);
Demo
0
你可以嘗試實現自定義UrlSerializer
。它可能是這個樣子:
import { DefaultUrlSerializer, UrlTree } from '@angular/router';
export class CustomUrlSerializer extends DefaultUrlSerializer {
parse(url: string): UrlTree {
return super.parse(url);
}
serialize(tree: UrlTree): string {
let url = super.serialize(tree);
url = url.length > 1 ? url += '/' : url;
return url;
}
}
然後在你的NgModule
它提供:
@NgModule({
declarations: [
...
],
imports: [
...
],
providers: [...
{provide: UrlSerializer, useClass: CustomUrlSerializer}
],
bootstrap: [...]
})
export class AppModule { }
相關問題
- 1. Angular 2 - 如何傳遞URL參數?
- 2. Angular JS - 檢索URL參數
- 3. Angular 2 - FormControl setValue'onlySelf'參數
- 4. Angular 2 RC5 - 使用參數
- 5. Symfony 2 URL參數?
- 6. 動態URL參數基於陣列中的id數Angular 2
- 7. Angular 2 URL重寫
- 8. Angular 2通過子路由獲取url參數
- 9. 在路由參數前更新Angular 2 IIS URL
- 10. Angular 2 RC1:從使用的初始URL獲取參數
- 11. Angular 2檢查url中是否存在查詢參數
- 12. Angular 2從url獲取json數據
- 13. Angular 2路由 - 隱藏URL
- 14. Angular 2定義基址url
- 15. Angular 2 - 製作一個URL
- 16. Angular $ http POST將參數附加到URL
- 17. 從Angular URL中提取多個參數
- 18. Angular 2路由參數未定義
- 19. Angular 2 - 測試路由參數變化
- 20. Angular 2中的路由參數
- 21. 使用參數獲取FirebaseListObservable(AngularFire2,Angular 2)
- 22. Angular 2路由參數驗證
- 23. Angular 2從網址中刪除參數
- 24. Angular 2管道參數失敗
- 25. Angular 2可選路由參數
- 26. 從queryParams angular 2中刪除參數
- 27. Angular 2 - 刪除帶參數的請求
- 28. 隱藏來自URL的URL參數Angular JS + Flex
- 29. 在Angular(2)引導組件中讀取URL(矩陣||查詢)參數
- 30. 如何獲取最新的Angular 2版本的URL參數(已解決)
我想你需要一個定製https://angular.io/docs/ts/latest/api/router /index/DefaultUrlSerializer-class.html –