我正在尝试使用我的Next.js 13前端设置Sanity Studio。我将http://localhost:3000
添加到我的Sanity项目CORS origin中,然后创建了这个sanity.config.ts
文件:
import { defineConfig } from "sanity";
import { deskTool } from "sanity/desk";
const config = defineConfig({
projectId: 'p7dk6747',
dataset: 'production',
title: 'Por La Línea Studio',
apiVersion: "2023-03-04",
basePath: "/admin",
plugins: [deskTool()]
})
export default config;
app/admin/[[...index]]/page.tsx
文件:
"use client";
import config from "@/sanity.config";
import { NextStudio } from "next-sanity/studio";
export default function AdminPage() {
return <NextStudio config={config} />;
}
应该是这样,但是当我尝试访问http://localhost:3000/admin
时,它没有加载,我的控制台打印出以下错误:
error - SyntaxError: "undefined" is not valid JSON
at JSON.parse (<anonymous>)
我该怎么解决这个问题?
我希望看到我的项目的理智工作室 Jmeter 板认为以下链接:http://localhost:3000/admin
。
1条答案
按热度按时间piwo6bdm1#
解决方案是将
AdminPage
从app/admin/[[...index]]/page.tsx
转换为箭头函数,然后将其导出到单独的代码行中,如下所示:这似乎是一个Next.js 13 bug,@Yaser和@Nimish在this YouTube video中指出了这一点。