【发布时间】:2023-02-12 03:05:04
【问题描述】:
昨天我将我的项目(使用 Sanity.io)部署到 Vercel,没有问题。
今天我编辑了我的代码并想用这个命令部署新版本:
vercel build
vercel deploy --prebuilt
vercel --prod
最后一条命令给了我一条错误信息:
而且错误似乎来自 fetchPageInfo.js
fetchPageInfo.js
export const fetchPageInfo = async() => {
const res = await fetch(`${process.env.NEXT_PUBLIC_BASE_URL}/api/getPageInfo`);
const data = await res.json();
const pageInfo: PageInfo = data.pageInfo
return pageInfo;
索引.tsx
export const getStaticProps: GetStaticProps<Props> = async () => {
const pageInfo: PageInfo = await fetchPageInfo();
const experience: Experience[] = await fetchExperience();
const skills: Skill[] = await fetchSkills();
const projets: Projet[] = await fetchProjet();
const socials: Social[] = await fetchSocial();
return {
props: {
pageInfo,
experience,
skills,
projets,
socials,
},
revalidate:10,
};
};
环境.local
NEXT_PUBLIC_SANITY_DATASET = production
NEXT_PUBLIC_SANITY_PROJECT_ID = *<hideContent>*
NEXT_PUBLIC_BASE_URL = http://localhost:3000/
GENERATE_SOURCEMAP=false
我是 Sanity 和 Vercel 的新手,我想 Sanity 和 Vercel 一起交流,Vercel 将 NEXT_PUBLIC_BASE_URL 转换为真实 URL 而不是本地
我试图直接在 sanity.ts 中传递 projetId 键并将真实的在线 URL 放在 fetchPageInfo 中(这个编辑给了我这个错误:无法从 undefined/api/getExperience 解析 URL
但是当我将 URL 放入 Safari 时,我检索了所有数据。
所以我被卡住了...
有人能帮助我吗 ?
【问题讨论】:
-
我也有同样的问题,但我遇到了同样的错误,但
vercel build本身对我来说是失败的。无论如何,你有没有找到任何解决办法?
标签: javascript vercel sanity