如何解决我的 gatsby graphql 中的 woocommerce 购物车总是空的
这是我的第一个问题,希望我做对了。我正在尝试为我的 woocommerce 制作一个 gatsby 前端,并且一切正常。到目前为止,我的所有查询都运行良好,但是当我进行查询以获取购物车信息时,它总是在我的 localhost://8000/___graphql 上显示为空,但在 wp graphiql 中我可以看到它就好了。
这是我的 gatsby-config,我想这就是问题所在。
siteMetadata: {
title: "shopone",},plugins: [
{
resolve: `gatsby-source-wordpress`,options: {
url:
process.env.WPGRAPHQL_URL ||
`https://wpurl/graphql`,{
resolve: "gatsby-source-graphql",options: {
typeName: "WPGraphQL",fieldName: "wpcontent",url: "https://wpurl/graphql",{
resolve: 'gatsby-wpgraphql-inline-images',options: {
wordPressUrl: 'https://my/wpurl/',uploadsUrl: 'https://my/url/wp-content/uploads/',processPostTypes: ['Page','Post','CustomPost'],graphqlTypeName: 'WPGraphQL',httpHeaders: {
Authorization: `Bearer ${process.env.GITHUB_TOKEN}`,}
},{
resolve: `gatsby-source-filesystem`,options: {
name: `images`,path: (__dirname,`src`),`gatsby-plugin-sass`,`gatsby-transformer-sharp`,`gatsby-plugin-sharp`
],};
解决方法
这是因为您的 localhost:8000/___graphql
是在构建时生成的,此时,购物车将始终为空,因为尚未允许用户填充它。
您的 WP GraphiQL API 是一个异步 API,可在用户填充购物车时实时按需获取数据,因此一旦请求完成,它就会始终包含数据。要“连接”两者,您需要对 API 执行一些获取/发布请求。
您可以在Build Time and Client Runtime Data Fetching中阅读更多信息。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。