Angular 2プロジェクトでng-spin-kitを使用しています。私はこのコードを持っている部品で角度2 ng-spin-kit
:
loading: boolean;
setTimeout(() => { this.loading = true },
1000
);
と私は、この持っているHTMLで:だから
<sk-fading-circle class="loader" [hidden]="loading"></sk-fading-circle>
を、私はスピナーの実行をしたが、それだけで1000ミリ秒のために実行されます。
APIの内容が読み込まれるまで、スピナーを実行する必要があります。
setTimeout()
がこれを行う最善の方法であるかどうかわかりません。
どうすればいいですか?
UPDATE
これが可能で、いくつかのオプションがありますが、サービス
export class AppService {
endPoint = AppConstants;
handler = AppHandler;
constructor(private http: Http) {}
getCandidates() {
const headers = new Headers();
headers.append('Content-Type', 'application/json');
headers.append('Access-Control-Allow-Origin', '*');
headers.append('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept');
return this.http.get(this.endPoint.API_ENDPOINT_GET_CANDIDATES, {
headers: headers
})
.toPromise()
.then((res: Response) => {
const data = res.json();
const allCandidate = [];
data.result.forEach((entry) => {
const candidate = new Candidate();
candidate.college = entry.college;
candidate.cultural_fit = entry.cultural_fit;
candidate.email = entry.email;
candidate.graduation = entry.graduation;
candidate.logic_test = entry.logic_test;
candidate.mobile_phone = entry.mobile_phone;
candidate.name = entry.name;
allCandidate.push(candidate);
});
return allCandidate;
})
.catch(this.handler.handleError);
}
}
を行うだろう方法ですあなたは、あなたのAPI呼び出しのための観測を使用していますか?もしそうであれば、それは非常に簡単です – CozyAzure
私はObservablesを使用していませんが、私はプロジェクトでそれを変更します –
あなたのAPIへの呼び出しであなたの質問を更新すれば、おそらくObservablesの解決策を提案できます – crash