4

私は以下のJavaScriptを少し持っています。ES6 プロジェクトで async/await を使用します。突然 404 応答コードがヒットしないことに気付きました。実際、.json() もコンソール エラーをスローしていますが、まだキャッチにヒットしていません。すぐにスローしてコードの catch ブロックに移動しようとすると、エラーが発生することが予想されます。

async getDash(projectId, projectUserId) {
  try {
    const events = (await this.apiHttp
      .fetch(`${projectId}/users/${projectUserId}/participant-event-dash`)).json();
    return events;
  } catch (e) {
    // fail back to local (dev testing)
    return (await this.http
      .fetch(`${this.appConfig.url}dist/api/query/json/partic-event-dash.json`)).json();
  }
}
4

1 に答える 1

5

メソッドが非同期の場合json()は、もう 1 つ追加する必要がありますawait

async getDash(projectId, projectUserId) {
  try {
    const events = await (await this.apiHttp
      .fetch(`${projectId}/users/${projectUserId}/participant-event-dash`)).json();
    return events;
  } catch (e) {
    // fail back to local (dev testing)
    return await (await this.http
      .fetch(`${this.appConfig.url}dist/api/query/json/partic-event-dash.json`)).json();
  }
}
于 2016-09-28T15:59:51.920 に答える