Apollo-link-rest: Il manque les propriétés suivantes du type 'RestLink' du type 'ApolloLink' : split, concat

Créé le 14 juin 2020  ·  4Commentaires  ·  Source: apollographql/apollo-link-rest


Sur la version 0.8.0-beta.0 l'implémentation de RestLink est cassée. J'ai suivi ce tutoriel mais le premier bloc de code casse déjà :

// Create a RestLink for the Github API
const link = new RestLink({ uri: 'https://api.github.com' });

// Configure the ApolloClient with the recommended cache and our RestLink
const client = new ApolloClient({
  cache: new InMemoryCache(),
  link,
}); 

entraîne l'erreur TypeScript suivante :

Type 'RestLink' is missing the following properties from type 'ApolloLink': split, concat

des détails:

{
    "resource": "/*redacted*/src/file.ts",
    "owner": "typescript",
    "code": "2739",
    "severity": 8,
    "message": "Type 'RestLink' is missing the following properties from type 'ApolloLink': split, concat",
    "source": "ts",
    "startLineNumber": 11,
    "startColumn": 3,
    "endLineNumber": 11,
    "endColumn": 7,
    "relatedInformation": [
        {
            "startLineNumber": 17,
            "startColumn": 5,
            "endLineNumber": 17,
            "endColumn": 9,
            "message": "The expected type comes from property 'link' which is declared here on type 'ApolloClientOptions<NormalizedCacheObject>'",
            "resource": "/*redacted*/node_modules/apollo-client/ApolloClient.d.ts"
        }
    ]
}

Ce comportement est reproductible sur l'exemple codesandbox en mettant à niveau la dépendance apollo-link-rest vers 0.8.0-beta.0 .

Revenir à v0.7.3 résout le problème.

Commentaire le plus utile

D'accord, je ne le savais pas. Je viens de suivre la doc. Je vais clore le sujet. Il est bon d'avoir ceci documenté pour d'autres qui rencontrent le même problème. Cela arrive probablement à plus de gens car beaucoup de gens ne font que npm install (ou yarn ) la dernière version et cela ne fonctionnera pas.

Tous les 4 commentaires

Merci @lextas - la version bêta est uniquement destinée à être utilisée avec le client Apollo 3.0 (et les packages Apollo associés dans les versions compatibles).

Malheureusement, en raison d'événements mondiaux, Apollo-client 3.0 a été retardé et je ne sais pas actuellement quand ils prévoient de les expédier.

D'accord, je ne le savais pas. Je viens de suivre la doc. Je vais clore le sujet. Il est bon d'avoir ceci documenté pour d'autres qui rencontrent le même problème. Cela arrive probablement à plus de gens car beaucoup de gens ne font que npm install (ou yarn ) la dernière version et cela ne fonctionnera pas.

Hmm, alors quelles versions dois-je utiliser ? Je viens de suivre le guide d'installation pour cela et je me heurte à ce problème.

    "apollo-cache-inmemory": "^1.6.6",
    "apollo-client": "^2.6.10",
    "apollo-link": "^1.2.14",
    "apollo-link-rest": "^0.8.0-beta.0",

@Andrew1431 -- avec ces versions des autres packages, vous voulez "apollo-link-rest": "^0.7.0"

Cette page vous a été utile?
0 / 5 - 0 notes