Angular 2通过post请求更新多个变量

时间:2017-01-19 06:18:25

标签: angular post scope http-post

所以我在一个组件中有三个方法,它们都以非常类似的方式进行不同的HTTP post请求调用。

但首先,我在组件中有三个类变量,它们以我的请求存储响应的状态,所有这些都以类似的方式定义。他们是:

myPath: boolean = false;
updateVariable = [];

执行实际发布请求的方法是:

onPost(obj:JSON, postPath: string): any {

  this._httpTestService.postJSON(obj, postPath).subscribe(
      data => this.updateVariable[0] = data,
      error => alert(error),
      () => console.log("update variable is: " , this.updateVariable)
  );
}

我的三种方法设置与下面的方法非常相似。我有这个" updateVariable"是因为我试图直接传递我想要的变量,但由于范围,它没有更新类变量本身 - 只是它在方法中的值。但即使我传入一个列表,当post请求返回响应时,类变量仍然没有得到更新。我认为它会更新列表中包含的类变量,但它仍然是 undefined '当在这个" onPost"之外访问时方法。

private validatePath(model: any) : boolean {
   this.obj = {"input": model.myPath}; // already defined
   this.postPath = '/v1/validate_metadata_path';
   this.updateVariable = [this.myPath]; 

   this.onPost(this.obj, this.postPath);
   return false;
}

所以我的问题是,有什么方法可以传递或设置我的" onPost"方法,以便我可以更新我想要的任何类变量?或者,我是否必须单独制作一个" onPost"我的三种方法中每种方法需要一个帖子请求的方法?

您可以假设HTTP发布请求" onPost"使我的HTTP服务正常工作。

0 个答案:

没有答案