在我的父组件中,我发出了一个服务请求来获取数据。如何告诉我的孩子组件等待回复?

时间:2016-08-01 20:10:53

标签: javascript angularjs angular

我正在使用角度2。

在我的父组件ngOnInit()中,我正在发送API请求来获取一些数据:

export class ParentComponent implements OnInit {

  constructor(private myService: MyService) { }

  myData;
  errorMessage: string;

  ngOnInit() {
    this.getData();
  }

  getData() {
    this.myService.getData()
      .subscribe(
        data => this.myData = data,
        error => this.errorMessage = <any>error
      )
  }
}

我的ChildComponent将使用myData(在这种情况下,它只是带有id和名称的名称对象数组的JSON响应)来显示名称。

但是,由于我有一个转发器需要这个对象并且在开始时未定义,我如何“等待”响应加载?现在,我从孩子那里得到一个myData是未定义的错误。

例如在反应中,我会做类似this.props.myData && DO_SOMETHING

的事情

1 个答案:

答案 0 :(得分:0)

别介意我是个白痴。

我在转发器周围的标签中执行了以下操作:

<div *ngIf="myData">
  ...my repeater and other stuff
</div>