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

Next.js+Netlify调用Sanity时遇TypeError: sanityClient is not a function

解决“sanityClient is not a function”报错问题

问题原因

你使用的@sanity/client版本(v3及以上)已不再默认导出sanityClient函数,而是采用命名导出的createClient方法来创建客户端实例,旧写法自然会触发函数不存在的报错。

修复方案

将你的代码修改为以下形式:

const { createClient } = require('@sanity/client')
const client = createClient({
  projectId: 'PROJECT_ID',
  dataset: 'production',
  token: process.env.TOKEN,
  useCdn: false // Netlify Functions环境建议关闭CDN,确保数据实时性或适配token权限
})

补充说明

  • 若坚持使用旧版sanityClient写法,需安装v2版本依赖:npm install @sanity/client@2,但不推荐此做法,因v2已停止维护。
  • 确认Netlify后台已正确配置环境变量TOKEN,避免后续因权限缺失引发新问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 22:44:56