I get the following error in the next plunker.
It is not possible to set the properties stack of an object [Object Object] that only getter has
The plunker is here https://plnkr.co/edit/IP1ssat2Gpu1Cra495u2?p=preview
The code is as follows:
//our root app component import {Component, NgModule, OnInit, Injectable} from '@angular/core' import {BrowserModule} from '@angular/platform-browser' import { HttpModule, Http } from '@angular/http'; import 'rxjs/add/operator/toPromise'; class MyModel { public name: string; public value: string; } @Injectable() export class MyService { constructor(public http: Http) { } getData (request: MyModel):Promise<MyModel>{ return this.http.get('https://run.plnkr.co/j2Cw0yaD5Dn7ENaR/mymodel.json') .toPromise() .then(response => { return response as MyModel; }); } } @Component({ selector: 'my-app', template: ` <div> <h2>Hello {{name}}</h2> </div> `, }) export class App implements AfterViewInit { name:string; constructor(myService : MyService) { this.name = 'Angular2' } ngAfterViewInit(){ let myModelObj : MyModel = new MyModel(); console.log(this.myService); this.myService.getData(myModelObj) .then(response => { console.log('GET Request success') console.log(response); }); } } @NgModule({ imports: [ BrowserModule, HttpModule ], declarations: [ App ], providers : [MyService], bootstrap: [ App ] }) export class AppModule {}
Update
I can understand that the error is here
this.myService.getData(myModelObj) .then(response => { console.log('GET Request success') console.log(response); });
If I comment on these 4 lines, it works fine. Please, help.
source share