【问题标题】:Query multiple collections from Shopify in GatsbyJS在 GatsbyJS 中从 Shopify 查询多个集合
【发布时间】:2020-08-22 16:22:17
【问题描述】:

我想使用gatsby-source-shopify根据关联的集合显示 Shopify 产品组

过滤以从一个集合中获取所有产品就像运行此查询一样简单:

  const { allShopifyCollection } = useStaticQuery(
    graphql`
      query {
        allShopifyCollection(filter: {id: {in: "Shopify__Collection__Z2lkOi8vc2hvcGlmeS9Db2xsZWN0aW9uLzE3NzAxMjY3MDQ5OA=="}}) {
          edges {
            node {
              products {
                title
              }
            }
          }
        }
    `
  )

但是(据我所知)不可能对同一组件中的同一数据类型进行多次查询。

解决此问题的首选方法是什么?

  • 使用多个组件来获取每个集合的数据并 将其传递给网格组件?

  • 获取所有集合并过滤掉每个集合?

  • 另一种解决方案?

【问题讨论】:

    标签: graphql gatsby


    【解决方案1】:

    你能用query aliases吗?

    const { allShopifyCollection } = useStaticQuery(
      graphql`
        query {
          collection1: allShopifyCollection(filter: {id: {in: "Shopify__Collection__Z2lkOi8vc2hvcGlmeS9Db2xsZWN0aW9uLzE3NzAxMjY3MDQ5OA=="}}) {
            edges {
              node {
                products {
                  title
                }
              }
            }
          }
    
          collection2: allShopifyCollection(filter: {id: {in: "Shopify__Collection__someOtherCollection"}}) {
            edges {
              node {
                products {
                  title
                }
              }
            }
          }
    
          collection3: allShopifyCollection(filter: {id: {in: "Shopify__Collection__yetAnotherCollection"}}) {
            edges {
              node {
                products {
                  title
                }
              }
            }
          }
      `
    )
    

    【讨论】:

    • 啊!我不知道这是可能的。谢谢!
    • 我很高兴它有帮助。
    猜你喜欢
    • 2017-10-22
    • 1970-01-01
    • 2020-09-07
    • 1970-01-01
    • 2020-07-24
    • 2021-12-10
    • 2014-08-09
    • 2019-05-09
    • 2019-12-28
    相关资源
    最近更新 更多