kamilkisiela / apollo-angular

A fully-featured, production ready caching GraphQL client for Angular and every GraphQL server 🎁
https://apollo-angular.com
MIT License
1.5k stars 309 forks source link

error in angular 4 when installing apollo #457

Closed ahelord closed 6 years ago

ahelord commented 6 years ago

Hello friends, first of all I want to give you the collaborators and maintainers of this library.

I am using this starter kit angular4 apollo https://github.com/scaphold-io/angular4-apollo-client-starter-kit

i did npm install and ng serve and I had these errors

ERROR in /Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/types.d.ts (17,45): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/types.d.ts (17,47): '>' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/types.d.ts (19,2): ';' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/types.d.ts (19,4): Expression expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/types.d.ts (20,10): Expression expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/types.d.ts (20,5): Cannot find name 'data'.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/types.d.ts (20,12): Cannot find name 'T'.

ERROR in /Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (8,48): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (8,50): '>' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (10,2): ';' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (10,4): Expression expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (11,15): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (11,24): ';' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (11,49): '(' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (11,6): Cannot find name 'queryName'.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (11,17): Cannot find name 'string'.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/data/mutationResults.d.ts (11,26): 'MutationQueryReducer' only refers to a type, but is being used as a value here.

ERROR in /Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (47,36): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (47,38): '>' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (49,2): Expression expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (50,27): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (51,23): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (52,43): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (53,48): '(' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (54,51): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (55,34): '(' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (57,41): ',' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (57,43): '>' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (59,2): ';' expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (59,4): Expression expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (59,74): Expression expected.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (50,15): 'DocumentNode' only refers to a type, but is being used as a value here.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (52,26): The left-hand side of an arithmetic operation must be of type 'any', 'number' or an enum type.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (52,35): The right-hand side of an arithmetic operation must be of type 'any', 'number' or an enum type.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (53,21): 'MutationQueryReducersMap' only refers to a type, but is being used as a value here.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (54,22): Cannot find name 'string'.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (54,33): 'PureQueryOptions' only refers to a type, but is being used as a value here.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (55,14): 'MutationUpdaterFn' only refers to a type, but is being used as a value here.
/Users/macbook/Projects/angular4-apollo-client-starter-kit/node_modules/apollo-client/core/watchQueryOptions.d.ts (59,63): Cannot find name 'T'.

I have read several issues but I can not find a definitive solution or if in these months the correction will be launched if it is so it is only important to know the status of the solution to be able to use apollo client 2.

Thanks.

kamilkisiela commented 6 years ago

Use newer TypeScript, I don't remember on which exact version that changed but I think it was 2.4 so 2.4+. You can checkout "Migration" in apollo docs to see how to use this starter with Apollo Client 2.0 and Apollo Angular 1.0

ahelord commented 6 years ago

@kamilkisiela I already made the update to typescript 2.6.2 and I get other errors

ERROR in /Users/lrodriguez/angular_apollo_test_typescript/angular4-apollo-client-starter-kit/node_modules/@types/graphql/subscription/subscribe.d.ts (17,4): Cannot find name 'AsyncIterator'.
/Users/lrodriguez/angular_apollo_test_typescript/angular4-apollo-client-starter-kit/node_modules/@types/graphql/subscription/subscribe.d.ts (29,4): Cannot find name 'AsyncIterable'.

ERROR in /Users/lrodriguez/angular_apollo_test_typescript/angular4-apollo-client-starter-kit/node_modules/apollo-client-rxjs/build/src/RxObservableQuery.d.ts (7,22): Class 'RxObservableQuery<T>' incorrectly extends base class 'Observable<ApolloQueryResult<T>>'.
  Types of property 'lift' are incompatible.
    Type '<R>(operator: Operator<ApolloQueryResult<T>, ApolloQueryResult<R>>) => Observable<ApolloQueryResu...' is not assignable to type '<R>(operator: Operator<ApolloQueryResult<T>, R>) => Observable<R>'.
      Types of parameters 'operator' and 'operator' are incompatible.
        Type 'Operator<ApolloQueryResult<T>, R>' is not assignable to type 'Operator<ApolloQueryResult<T>, ApolloQueryResult<{}>>'.
          Type 'R' is not assignable to type 'ApolloQueryResult<{}>'.
kamilkisiela commented 6 years ago

@ahelord You somehow uses the apollo-client-rxjs which was a part of v0.X. Try to update apollo-angular to v1.0

kamilkisiela commented 6 years ago

Closing since we only support v1.0+