問題的形象和尋求的結果
在這里您可以看到第一個組件,它從服務器獲取資料,我無法將選定的面板設定為激活。第二個組件,仍然從模擬串列中獲取資料,是我所追求的視覺結果(即,將陣列 [0] 分配給 selectedSomething 變數)。
我有一個用于從模擬服務器和顯示它的組件中檢索資料的服務。
服務代碼:
export class ExperienceService {
private experiencesUrl = 'http://localhost:5000/experiences';
constructor(private http: HttpClient) {}
getExperiences(): Observable<Experience[]> {
return this.http.get<Experience[]>(this.experiencesUrl);
}
}
組件代碼:
export class ExperienceComponent implements OnInit {
experiences: Experience[] = [];
selectedExperience: Experience = this.experiences[0];
constructor(private experienceService: ExperienceService) {}
ngOnInit(): void {
this.getExperiences();
}
getExperiences() {
this.experienceService
.getExperiences()
.subscribe((experiences) => (this.experiences = experiences));
}
onSelect(experience: Experience): void {
this.selectedExperience = experience;
}
}
那么,如何使組件變數“selectedExperience”使用體驗[0] 進行初始化?
(需要明確的是,其余代碼正在運行,當我單擊左側的按鈕時,onSelect 函式起作用并且每個面板都會出現,但我希望從一開始就選擇頂部的那個)
uj5u.com熱心網友回復:
如何在subscribe()回呼中初始化它?
this.experienceService
.getExperiences()
.subscribe((experiences) => {
this.experiences = experiences
this.selectedExperience = experiences[0]
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/491836.html
