useFetch — composable for data fetching.
1<script setup>2// Basic usage3const { data, pending, error } = await useFetch("/api/posts")45// With options6const { data } = await useFetch("/api/posts", {7 method: "POST",8 body: { title: "New Post" },9 headers: { Authorization: "Bearer token" },10 transform: (data) => data.posts11})1213// With watch14const { data } = await useFetch(`/api/posts?page=${page}`)15</script>1617<template>18 <div v-if="pending">Loading...</div>19 <div v-else-if="error">{{ error.message }}</div>20 <div v-else>{{ data }}</div>21</template>
Options:
method, body, headers.transform, pick.watch, immediate.