我正试图用Sanity CMS创建一个博客;当我试图从Sanity数据库获取数据时,我得到了
"错误:必须提供CCD_ 1才能执行查询";
我得到了带有projectID和数据库名称的client.js组件
给我错误的组件看起来像这样:
import React, { useEffect, useState } from "react";
import { Link } from "react-router-dom";
import sanityClient from "../client.js";
export default function AllPosts() {
const [allPostsData, setAllPosts] = useState(null);
useEffect(() => {
sanityClient
.fetch(
`*[_type == "post"]{
title,
slug,
mainImage{
asset->{
_id,
url
}
}
}`
)
.then((data) => setAllPosts(data))
.catch(console.error);
}, []);
return (
<div>
<h2>Blog Posts</h2>
<h3>Welcome to my blog posts page!</h3>
<div>
{allPostsData &&
allPostsData.map((post, index) => (
<Link to={"/" + post.slug.current} key={post.slug.current}>
<span key={index}>
<img src={post.mainImage.asset.url} alt="" />
<span>
<h2>{post.title}</h2>
</span>
</span>
</Link>
))}
</div>
</div>
);
}
使用了相同的教程,但遇到了相同的错误。在";js";,确保数据库被设置为"0";生产";。
对我来说,问题是我拼写了dataset:"数据集";。这里没有骆驼的情况下,伙计们,使用:";数据集:"生产",
在我的案例中,错误在于Client.js中的API版本属性我把它改成了2022-02-01,它对我来说非常好。不知道确切的原因是什么,但它仍然解决了问题。