簡體   English   中英

Angular2-如何觸發從應用程序組件到路由的事件

[英]Angular2 - how to trigger an event from the app component to a route

我是Angular2的新手(沒有Angular1的經驗),並且我目前正在一個小型網站上工作。 我需要做的很簡單。 在AppComponent的模板中,有兩個用於選擇語言的按鈕。 我也有一條路線,比方說/ products,其中顯示了從WS(通過服務獲取的http)檢索的產品列表。 當我按下一種語言按鈕時,我需要刷新產品列表。 我在ProductsService類中發出http.get請求,並在ProductsComponent類中訂閱了observable。 但是,如何在仍然在ProductsComponent中接收預訂的同時觸發來自AppComponent的get請求?

任何幫助將不勝感激

根據您的描述,您可以做兩件事。

  • 在AppComponent中將ProductComponent添加為ViewChild

     import {ViewChild} from '@angular/core'; export class AppComponent{ @ViewChild(ProductComponent) ProductComponent; public reloadProduct(): void { this.ProductComponent.reloadProduct(); } } 
  • 將Product信息存儲在ProductService類的變量中。 當您按語言按鈕時,調用Web服務並獲取新產品並將其存儲在ProductService類變量中。 Angular將自動在ProductComponent中進行更改檢測並顯示更新的產品列表。

暫無
暫無

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

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