Apollo-link-rest: В типе RestLink отсутствуют следующие свойства типа ApolloLink: split, concat.

Созданный на 14 июн. 2020  ·  4Комментарии  ·  Источник: apollographql/apollo-link-rest


В версии 0.8.0-beta.0 реализация RestLink нарушена. Я выполнил это руководство, но первый блок кода уже сломался:

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

приводит к следующей ошибке TypeScript:

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

Детали:

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

Это поведение можно воспроизвести на примере codeandbox, обновив зависимость apollo-link-rest до 0.8.0-beta.0 .

Возврат к v0.7.3 решает проблему.

Самый полезный комментарий

Хорошо, я этого не знал. Я просто следил за документами. Закрою вопрос. Хорошо, если это задокументировано для тех, кто сталкивается с той же проблемой. Вероятно, это случается с большим количеством людей, поскольку многие люди просто npm install (или yarn ) последнюю версию, и она не будет работать.

Все 4 Комментарий

Спасибо @lextas - бета-версия предназначена только для использования с Apollo-client 3.0 (и соответствующими пакетами Apollo в совместимых версиях).

К сожалению, из-за мировых событий выпуск Apollo-client 3.0 был отложен, и в настоящее время я не знаю, когда они планируют выпуск.

Хорошо, я этого не знал. Я просто следил за документами. Закрою вопрос. Хорошо, если это задокументировано для тех, кто сталкивается с той же проблемой. Вероятно, это случается с большим количеством людей, поскольку многие люди просто npm install (или yarn ) последнюю версию, и она не будет работать.

Хм, а какие версии использовать? Я просто выполнил инструкции по настройке и столкнулся с этой проблемой.

    "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 - с этими версиями других пакетов вы хотите "apollo-link-rest": "^0.7.0"

Была ли эта страница полезной?
0 / 5 - 0 рейтинги