我跑過英雄之旅教程並改變了一下。我將搜索字段移至導航欄。在搜索時,它下拉搜索:rxjs主題 - 清除?
單擊任一組中的li
將導航到每個英雄的詳細信息頁面。我遇到的問題是導航不會清除搜索字詞。這是我目前的功能:
export class HeroSearchComponent implements OnInit {
heroes: Observable<Hero[]>;
private searchTerms = new Subject<string>();
...
gotoDetail(hero: Hero): void {
let link = ['/detail', hero.id];
this.router.navigate(link);
}
我的想法是,我可以打電話給this.searchTerms.clear()
如果這樣的方法存在的,但我不是太熟悉rxjs科目。我還可以對其進行重新初始化:
this.searchTerms = new Subject<string>();
卻不會這樣創建新對象我每次搜索的時間?解決這個問題的最好方法是什麼?
另外,我不知道,這個導航工作。當我以這種方式導航時,似乎並不使用子組件中的@Input()
。
編輯:部署在heroku,讓人們看到了問題。要複製:
- 去英雄11的「英雄詳細頁面:
- 注紡紗SVG。這是微調img組件。當img無法找到(或正在加載)時,它默認爲一個微調img。 OnLoad將圖像更改爲實際圖像。英雄11沒有圖像,所以微調者保持(期望的效果)。
- 在NAV的搜索欄類型 「M」。
- 點擊Bombasto。注意圖片加載
- 點擊尼斯先生(沒有圖片)。請注意,現在沒有圖像(雖然這是英雄11,而我們之前有一個微調)。
我取決於你如何以及爲什麼使用'Subject'。您可以使用您的更改進行演示嗎? – martin