簡體   English   中英

用路由器在另一個組件上調用方法

[英]Call the method on another component with a router

我在表上有一個按鈕,當我單擊它時,我想轉到另一個組件並打開特定的元素,我的意思是,導航到另一個組件並調用方法(GetReport)。

如何使用路由器或類似工具實現此目的?

我在TypeScript中使用angular 6

實際上,這通常不是通過在路由器的另一個組件上調用方法來完成的,而是通過從組件中注入要使用的信息來觸發導航,並通過注入路由器在着陸組件上檢索信息。

使用路由器的兩種可能的解決方案是:

  1. 包括作為路線的一部分,你要提供的信息,並使用檢索ActivatedRoute描述着陸組件上這里
  2. 使用query parameters描述這里導航到其他路線時,使提供的信息,並使用檢索ActivatedRoute登陸組件

另一種方法是將數據集中存儲在應用程序中,並訂閱需要數據的組件上的更改。 實現此目的的兩種可能方法是:

  1. 創建一個具有Rxjs主題和用於設置下一個值的方法的服務,並在登陸組件上訂閱該主題的更改
  2. 使用狀態管理解決方案(例如NGRX或NGXS),調度動作以設置所選元素,並從着陸組件內部的商店中選擇信息

根據您提供的信息,似乎最適合您的用例的方法是1)或2),具體取決於信息是路由還是查詢參數的一部分。

暫無
暫無

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

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