angular - Angular2 function call throws typeerror -
i have function in service, corresponding code:
    @injectable()     export class myservice { constructor(private http: http, private router: router) {}         getinfo() {             return this.http.get(url).map((response: response) => {return json.parse(response)}         }     } this method getting called ngoninit of component mentioned below:
export class mycomponent implements oninit {     constructor(private service: myservice) { }      ngoninit() {         this.service.getinfo().subscribe((data) => {                     this.info = data;                 });     } } the issue when navigating component, putting url on browser, works fine, when navigate component, using router.navigate method, throws exception, 
getinfo not function
please correct me problem , doing wrong?
you should inject service component, use it. can that, declararing service parameter of component's constructor. example:
simple.service.ts
@injectable() export class simpleservice {     constructor(private http: http) {}     somemethod() { //some method } } some.component.ts
export class somecomponent implements oninit {     constructor(private simpleservice: simpleservice) { }      ngoninit() {         this.simpleservice.somemethod();     } } i'm not sure, if solution ")" character missing in service's method. should that:
return this.http.get(url).map((response: response) => {return json.parse(response)}) or even:
return this.http.get(url).map((response: response) => response.json()) 
Comments
Post a Comment