2 回答

TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超4個(gè)贊
在您的代碼中,fanSpeedCard 是一個(gè)屬性,它在您的類(DashboardComponent)構(gòu)造時(shí)分配了對(duì)象的值(使用 CardSettings 接口) :
fanSpeedCard: CardSettings = {
content: this.fanSpeed
};
由于 fanSpeed 最初沒有定義(僅作為字符串類型)并且由于您沒有在 API 響應(yīng)中更新 CardSettings 對(duì)象 - 您的 UI 不會(huì)更改。
如評(píng)論中所述,您需要確保更新訂閱塊內(nèi)的 CardSettings 內(nèi)容屬性的值(不僅僅是 fanSpeed):
gOnInit() {
this.apiService.getFanSpeed().subscribe((response)=>{
this.fanSpeed = response['fanSpeedVar'];
this.fanSpeedCard.content = this.fanSpeed;
});
}

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超8個(gè)贊
您沒有正確更新ngOnInit()fanSpeedCard中的content屬性值。在ngOnInit()中,您重新分配了this.fanSpeed值。在這里,您應(yīng)該將服務(wù)響應(yīng)值分配給'屬性。fanSpeedCardcontent
以下解決方案將解決您的問題。
組件.ts 文件
import { Component, OnInit } from '@angular/core';
import { ApiService } from '../../api.service';
interface CardSettings {
content: string;
}
@Component({...})
export class DashboardComponent implements OnInit {
fanSpeed: string;
ngOnInit() {
this.apiService.getFanSpeed().subscribe((response)=>{
this.fanSpeed = response['fanSpeedVar']
this.fanSpeedCard.content = this.fanSpeed;
});
}
fanSpeedCard: CardSettings = {
content: this.fanSpeed
};
constructor(private apiService: ApiService) {}
}
添加回答
舉報(bào)