Использование Shopify Storefront API для получения коллекции изображений - PullRequest
0 голосов
/ 01 мая 2018

Я создаю приложение Shopify Ionic 3, используя Storefront API. Получение ID и Title работ. Но попытка получить доступ к изображению не удается.

Использование «GraphiQL» с этим запросом

{
  shop {
    collections(first: 1) {
      edges {
        node {
          id
          title
          handle
          image {
            originalSrc
          }
        }
      }
      pageInfo {
        hasNextPage
      }
    }
  }
}

приведет к

{
  "data": {
    "shop": {
      "collections": {
        "edges": [
          {
            "node": {
              "id": "Z2lkOi8vc2hvcGlmeS9Db2xsZWN0aW9uLzM2NTUwNjY5OQ==",
              "title": "Snacks",
              "handle": "snacks-co",
              "image": {
                "originalSrc": "https://cdn.shopify.com/s/files/1/2262/0831/collections/Snacks_Collection.jpg?v=1524511173"
              }
            }
          }
        ],
        "pageInfo": {
          "hasNextPage": true
        }
      }
    }
  }
}

При использовании «graphql-js-client» с Ionic 3 коллекция изображений недоступна.

// Service Provider Function
getCollectionsWithImage() {
  let query = this.client.query((root) => {
    root.add('shop', (shop) => {
      shop.addConnection('collections', {args: {first: 16}}, (collection) => {
        collection.add('id');
        collection.add('title');

        // THIS does not work
        // collection.add('image', (image) => {
        //     image.add('originalSrc');
        // })

       // THIS does not work
        // collection.addConnection('image', (image) => {
        //     image.add('originalSrc');
        // })                  
       })
    })
  });

  return this.client.send(query).then(({model, data}) => {
    return model.shop.collections;
  });
}

Есть ли у вас идея?

1 Ответ

0 голосов
/ 02 мая 2018

Понял. После запуска Introspection Query для API-интерфейса Storefront обновились все узлы в моем types.js. Теперь я тоже могу получить доступ к коллекции изображений.

...