You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NextJS使用SWR请求API时出现类型错误问题求助

解决NextJS中使用SWR出现的default is not a function错误

错误原因

该错误源于SWR v2版本将默认导出改为了命名导出,你的代码使用了旧版的默认导入写法,与新版本不兼容。

解决方案

方案一:适配SWR v2的命名导入

将默认导入改为命名导入即可:

import { useSWR } from "swr";
const fetcher = (url: string) => fetch(url).then((res) => res.json());

export default function Home(){
  const { data, error, isLoading } = useSWR(
    "https://api.github.com/repos/vercel/swr",
    fetcher
  );

  return <></>
}

方案二:降级至SWR v1版本

若想继续使用默认导入写法,可降级到SWR v1.x版本,执行以下命令:

npm install swr@1.x
# 或使用yarn
yarn add swr@1.x

补充说明

SWR v2发布后调整了导出方式,这是新旧版本最主要的不兼容点。如果需要使用v2的新特性,优先选择方案一的命名导入写法。

内容的提问来源于stack exchange,提问作者Ashutosh Dash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 01:52:05