Angular 2中的数据绑定和可观察数据

时间:2017-03-07 11:09:01

标签: angular typescript angular2-observables

首先我要说我是Angular 2中的新人。

所以我正在创建一个从响应头获取变量的服务。 这是代码:

export class MyService{
constructor (private http: Http) {}

public doThings(varA:string, varB:string){
  let headers = new Headers({ 'Content-Type': 'application/json' });
  let options = new RequestOptions();
  let data={
    foo:{
      thing1: varA,
      thing2: varB
    }
  };
  let body = JSON.stringify(data,null,2);
  this.http.post("http://localhost:4000/foo", body , options)
    .map((res)=> res.headers.get("foo"))
    .subscribe((data)=> this.myValue = data);
}
public myValue = "";
}

组件A调用填充myValue的doThings函数:

...

export class AComponent {
  constructor(private mySvc:MyService){}
  vara;
  varb;
  onClick(){
    this.mySvc.doThings(this.vara,this.varb);
  }
}

App组件会监视myValue值,以隐藏/显示模板中的某些内容

...
export class AppComponent {
  constructor(private mySvc: MyService){}
  val = this.mySvc.myValue;
}

问题在于AppComponent val始终设置为""即使在组件b调用doThings

之后

我做错了什么?

感谢。

0 个答案:

没有答案