Angular 2 HTTP "Cannot resolve all parameters for 'AppService'"
Seems like you are not using typescript
compiler for transpiling files to js
, In that case you need to have use @Inject
while injecting any dependency inside a component constructor.
import {Injectable, Inject} from 'angular2/core';import {Http, Response} from 'angular2/http';import {Observable} from 'rxjs/Rx';@Injectable()export class AppService { constructor(@Inject(Http) private http: Http) { } // Uses http.get() to load a single JSON file getTableData() { return this.http.get('...').map((res: Response) => res.json()); }}
Another way to do it, which saves some typing in the future would be:
in your tsconfig.json
add compilerOptions.emitDecoratorMetadata=true
example of simple tsconfig.json
would be:
{ "compilerOptions": { "emitDecoratorMetadata": true, "experimentalDecorators": true }}
I had the same issue, and for me the problem was that i was missing import { HttpModule } from '@angular/http'
in app.module.ts