Apollo-link-rest: O tipo 'RestLink' está sem as seguintes propriedades do tipo 'ApolloLink': divisão, concat

Criado em 14 jun. 2020  ·  4Comentários  ·  Fonte: apollographql/apollo-link-rest


Na versão 0.8.0-beta.0 a implementação de RestLink está quebrada. Eu segui este tutorial, mas o primeiro bloco de código já quebra:

// 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,
}); 

resulta no seguinte erro de TypeScript:

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

detalhes:

{
    "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"
        }
    ]
}

Este comportamento é reproduzível no exemplo codesandbox atualizando a dependência apollo-link-rest para 0.8.0-beta.0 .

Reverter para v0.7.3 resolve o problema.

Comentários muito úteis

Ok, eu não sabia disso. Eu apenas segui os documentos. Vou encerrar o problema. É bom ter isso documentado para outras pessoas que tenham o mesmo problema. Provavelmente acontece com mais pessoas, já que muitas pessoas apenas npm install (ou yarn ) a versão mais recente e não funcionará.

Todos 4 comentários

Obrigado @lextas - o beta é destinado apenas para uso com Apollo-client 3.0 (e pacotes Apollo relacionados em versões compatíveis).

Infelizmente, devido a eventos mundiais, o Apollo-client 3.0 foi adiado e atualmente não estou ciente de quando eles planejam ser lançados.

Ok, eu não sabia disso. Eu apenas segui os documentos. Vou encerrar o problema. É bom ter isso documentado para outras pessoas que tenham o mesmo problema. Provavelmente acontece com mais pessoas, já que muitas pessoas apenas npm install (ou yarn ) a versão mais recente e não funcionará.

Hmm, então quais versões devo usar? Acabei de seguir o guia de configuração para isso e estou tendo esse problema.

    "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 - com essas versões dos outros pacotes, você quer "apollo-link-rest": "^0.7.0"

Esta página foi útil?
0 / 5 - 0 avaliações