0
私はgoogle API用のサービスを作成し、約束の応答で積み重ねました。私はあなたに私のコードをお見せしましょう:角度2の約束を理解しようとしています
getPromise: Promise<any>;
loadSheets: Array<any>;
constructor(public _checkAuthApiService: CheckAuthApiService) { }
ngOnInit() {
if (this._checkAuthApiService) {
this._checkAuthApiService.checkAuth().then(res => {
if (res && !res.error) {
this.loadSheetsFunc();
}
});
}
//setTimeout(function(){},1000); //When i add this it works :(
}
loadSheetsFunc =() => {
this.getPromise = new Promise((resolve: any, reject: any) => {
resolve(this._checkAuthApiService.loadSheetsApi())
});
this.getPromise.then((res: any) => this.sheetsResults(res));
};
sheetsResults = (res: any) => this.loadSheets = res.result.values;
ない私が行方不明ですが、私はngOnInit
内seTimeout
を追加するときに、TIは私がビューに必要なデータを取得するどのような作品にしてください。誰かがこのコードを手伝ったり、Observablesを使ってよりよい方法を提案したりできますか?前もって感謝します。
'this._checkAuthApiService.loadSheetsApi'とは何ですか? –
ポリフェルを使用していますか? –
this._checkAuthApiService.loadSheetsApiはgoogle apiからシートデータを返しています。最後に、res.result.valuesには必要なデータが含まれていますが、非同期呼び出しはデータが後で利用できるので、上記のsetTimeoutを使ってテストしています。問題は適切に発射されていない、または何かが欠けているという約束の呼び出しに残っています。 – itismelito