Slide 37
Slide 37 text
Web API の呼び出し
⚫ useFetch: SWR※1 に従った Web API の呼び出しが可能
⚫ server/api の API を呼び出す場合は引数や戻り値の型チェックの恩恵が受けられる。
⚫ 困ったところ:
⚫ useFetch は、新しいデータを取得するまでは過去のデータを表示することで速度を上
げる、というユースケースが想定されているが、業務システムでは過去のデータをそ
もそも使ってほしくないことが多い。
⇒ useFetch は使わずに onBeforeMount や onMounted で $fetch を使う必要がある※2
⚫ $fetch: サーバでもクライアントでも使える fetch 関数
⚫ イベント関数内で Web API を呼び出したい場合はこちらを使う
⚫ SWR を行わないので、意図しない動作が起きにくい
37
37
const { data, pending, error, refresh } = useFetch("/api/hello", {
method: "POST",
body: { name: "Name" },
})
const data = await $fetch("/api/hello", {
method: "POST",
body: { name: "Name" },
})
※1) Stale-While-Revalidate キャッシュを表示しつつ、コンテンツ更新を確認し取得することで素早い表示を可能にする戦略
※2) 後ほど vue-history-state の useRestorableState を使う方法を紹介します。