TypeError - sanityClient не является функцией

const sanityClient = require('@sanity/client')
const client = sanityClient({
projectId: 'PROJECT_ID',
dataset: 'production',
token: process.env.TOKEN
})

Я передаю параметры в файле функций netlify в sanityClient. Я получаю сообщение об ошибке sanityClient не является функцией. Я использую здравомыслие и netlify с Next.js. Спасибо

🤔 А знаете ли вы, что...
Node.js активно использует асинхронное программирование и обратные вызовы для обработки многозадачности.


121
1

Ответ:

Решено

Я провел исследование после того, как опубликовал этот вопрос. Require не работает с функциями netlify, поэтому добавьте это в netlify.toml.

[functions]
  node_bundler = "esbuild"

Это позволит импортировать модули для объединения функциональных файлов. Затем импортируйте:

import sanityClient from "@sanity/client";
const client = sanityClient({
projectId: 'PROJECT_ID',
dataset: 'production', 
token: SANITY_TOKEN
})

Интересные вопросы для изучения

Размер изображения не изменяется с помощью CSS попутного ветраКак получить объект из массива, состоящего всего из 1 слова и не содержащего специальных символов?Как развернуть приложение handlebars(hbs), Nodejs, mongoDBОшибка «Сокет уже открыт» при использовании «client.connect ()» перед любой командой Redis?Невозможно изменить NODE_ENV на другое значение, кроме производстваЯ использую экспериментальное приложение nextjs 13 с запросом RTK для выполнения запросов SSG, SSRКак получить доступ к router.asPath в функции, которая использует следующую/навигацию в каталоге приложения Next.js?Использование MDX с NextJS 13 возвращает ошибку useContextОшибка: объекты недействительны в качестве дочернего элемента React — при попытке асинхронного выполнения на page.tsx в nextjsОшибка NextJS: гидратация не удалась, поскольку исходный пользовательский интерфейс не соответствует тому, что было отображено на сервере. в папке экспериментального каталога приложения