簡體   English   中英

如何在Angular 2項目中提供路由器導航功能

[英]How to provide a router navigate function in Angular 2 project

在我的Angular 2項目中,我有一個自定義函數goToObject(objectType:string, objectID: number) ,可用於在應用程序中的幾個不同組件中導航到不同對象。 該函數如下所示:

goToObject(objectType:string, objectID: number) {
     this._router.navigate([type, id]);
}

我想知道是否有一種方法可以在整個項目中提供此功能,而不必在每個組件中分別定義它。 我想更難的是,此功能需要使用路由器對象的實例。 我是否必須嘗試在基本組件中提供它?

您可以使用共享服務

@Injectable() 
export class RouteServices {
  constructor(private _router:Router) {}
  navigate(...) {
     this._router.navigate([type, id]);
  }
}

然后將其提供給根組件,然后將其注入到要使用的位置並調用其方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM