0
私はtypescriptです関数から文字列を返すようにしようとしています -活字体の戻り値
private _renderListAsync(): string {
let _accHtml: string='';
// Local environment
if (Environment.type === EnvironmentType.Local) {
this._getMockListData()
.then((response) => {
_accHtml = this._renderList(response.value);
alert("1: " + _accHtml)
})
alert("3: " + _accHtml);
return _accHtml;
}
else if (Environment.type == EnvironmentType.SharePoint ||
Environment.type == EnvironmentType.ClassicSharePoint) {
this._getListData()
.then((response) => {
_accHtml = this._renderList(response.value);
alert("2: " + _accHtml);
})
alert("3: " + _accHtml);
return _accHtml;
}
}
しかし、私は唯一の「1」との警告の文字列値を取得することができるよと「2」ではなく「3 "警告が空の場合、関数から_accHtmlを返すことができません。私は間違って何をしていますか?また、 "1"と "2"の前に "3"のアラートが表示されていることに気づきます。なぜですか?
私はまた、if-elseブロックの後に_accHtmlを返そうとしましたが、まだ動作しません。 – user3759018
[非同期呼び出しからの応答を返す方法は?](http://stackoverflow.com/questions/14220321/how – Andreas
私は確かに言うことはできませんが、私は約束APIのいくつかの指標を見ています(つまり、 '.then()'がシグナルを送るかもしれません)非同期呼び出しを使用しています。これは非同期の問題のように感じます... – War10ck