awaitって何?

Share this post

awaitって何?

※誤った解釈の場合はご指摘いただけると幸いです。

参考書籍:実践Svelte入門(技術評論社)


awaitって?

  • Promiseに対して使えるブロック
  • 通常、プログラムは上から順に流れていて、処理Bが終わった後に処理Aを実行させたいなんて事はできない。 そんな時にPromise(約束)のクラス?に対して使えるブロックが「await」

...?

詳しく。
実際のコードで例にすると


<script>
  let promise = new Promise((resolve, reject) => {
    setTimeout(() => resolve('3秒経過しました。'), 3000);
  });
</script>

{#await promise}
  <p>Promise が解決するのを待っています・・・</p>
{:then value}
<p>{value}</p>
{:catch error}
<p>{error}</p>
{/await}

resolve:正常時に使われる引数
reject:異常時に使われる引数

上記の様に「Promise」の値を中身の関数の処理が終わると再読み込みしてくれる機能の様子。

{#await promise}
 最初に読み込まれるコード
{:then value}
読み込みが正常終了したら読み込まれるコード
{:catch error}
読み込みが以上終了したら読み込まれるコード
{/await}

とりあえずthenに正 終了した場合のコードを書き、catchに異常終了した場合に読ませたいコードを書くといいと思う。

Share this post

Newt Made in Newt