在Angular 5中从组件发送变量到服务

时间:2018-05-11 17:52:11

标签: angular service components angular5 web-development-server

在我目前的Angular 5项目中,我一直在通过我的服务

成功进行API调用

(为简洁起见,代码保持清洁)

myService.ts:

@Injectable()
export class my-service-service {

  constructor(private _http: HttpClient) {
   }

  myData1() {
    return this._http.get("API_URL")
      .map(result => result);
  }

通过订阅上述服务访问我连接组件上的信息。

myComponent.ts:

   import { myServiceService } from './my-service-service.service';
    @Component({
    ...
    })

constructor(private router: Router,
    private route: ActivatedRoute,
    private _myData: myServiceService) {
   ...
   }

ngOnInit() {

 this._myData.myData1()
    .subscribe(res => {
//Able to access data successfully here 
     }
}

现在我希望从我的控制器向服务发送相反方向的数据。 例如,假设我有

  public myVar: any;

我希望从我的服务中访问此变量(可能会动态地将其附加到API调用) 我该怎么做呢。

1 个答案:

答案 0 :(得分:4)

“从我的控制器向服务发送相反方向的数据”执行此操作的最佳方法是使用函数/方法参数。

//service.ts
myData1(parameter1) {
  //do whatever you need with parameter1
  return this._http.get("API_URL")
    .map(result => result);
}


//component.ts
public myVar: any;
ngOnInit() {

 this._myData.myData1(this.myVar).subscribe(res => { })
}