Nuxt3开发笔记

useFetch注意事项

Preview
  • useFetch的options参数非常重要
  • 常用options字段介绍

useFetch的options参数非常重要

function useFetch(
  url: string | Request | Ref<string | Request> | () => string | Request,
  options?: UseFetchOptions<DataT>
): Promise<AsyncData<DataT>>
type UseFetchOptions = {
  key?: string
  method?: string
  params?: SearchParams
  body?: RequestInit['body'] | Record<string, any>
  headers?: { key: string, value: string }[]
  baseURL?: string
  server?: boolean
  lazy?: boolean
  immediate?: boolean
  default?: () => DataT
  transform?: (input: DataT) => DataT
  pick?: string[]
  watch?: WatchSource[]
}
type AsyncData<DataT> = {
  data: Ref<DataT>
  pending: Ref<boolean>
  refresh: (opts?: { dedupe?: boolean }) => Promise<void>
  execute: () => Promise<void>
  error: Ref<Error | boolean>
}

常用options字段介绍

字段解释
key请求的唯一key,确保数据获取可以跨请求正确去重,如果没有提供,它将根据使用的静态代码位置生成。tips:如果该接口仅需要在ssr服务端请求,必须将该值设为固定唯一值
method请求方法,GETPOSTDELETEPUT
paramsquery参数
bodybody参数
headers请求标头
server是否获取服务器上的数据(默认为true)
pick过滤响应结果,目前仅支持选中数组键,一般的api都是返回对象,所以该字段用处不大
transform过滤响应结果(推荐使用)