La solution la plus commune pour consommer des APIs GraphQL est le package Apollo Angular apollo-angular.
Configuration
Profitez des schematics d'apollo-angular !
yarnngaddapollo-angular
A défaut de disposer d'un mécanisme de configuration dynamique de votre application Angular, mettez en place l'URI de votre API GraphQL via les environnements Angular (fichiers environments/environment*.ts)
Plugin IntelliJ / WebStorm
Le plugin GraphQL d'IntelliJ / WebStorm facilite la consommation d'APIs GraphQL grâce à la découverte automatique du schéma puis l'autocomplétion.
Bien qu'il soit possible d'utiliser directement les méthodes query, mutate et watchQuery du service Apollo pour exécuter des queries et mutations, depuis n'importe quel endroit de votre application, il est préférable d'utiliser des services dédiés à chaque query ou mutation qui héritent respectivement des classes Query et Mutation.
Ce service peut ensuite être utilisé ainsi :
Le service dispose également d'une méthode watch qui vous permet d'observer les changements en cas d'activation du polling (option pollInterval) ou encore en cas de mise à jour du cache local par exemple.