在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5/ angular http請(qǐng)求 return 沒有返回值

angular http請(qǐng)求 return 沒有返回值

  public getList () {
    this.http.get('lottery/activity/activity-list', {
      // params: {pageSize: '20'},
    })
    .subscribe((res: any) => {
      if (res.resultCode == 200) {
        this.activityList = res.resultData;
        console.log(this.activityList);//有值
        return res.resultData; //在ts中注入service 使用這個(gè)方法沒有值
      }
      // 加載成功之后做一些事
    }, (err: any) => {
    });
  }
  public OnInit () {
    this.activityList = this.activityService.getList();
    console.log(this.activityList);//這個(gè)是沒有值的
  }
回答
編輯回答
糖果果
  1. 首先你在一個(gè)observable中的subscribe中使用return是沒用的.
  2. 其次如果你的這個(gè)activityList是個(gè)數(shù)組,通過這個(gè)數(shù)組來遍歷生成activity的話,你可以用個(gè)更高級(jí)的用法。 利用AsyncPipe
    <ng-container *ngFor="let activity of activityList | async">
        <activity [options]="activity"></activity>
    </ng-container>
    
    public activityList: Observable<Array<any>>;
    
    ngOnInit() {
        this.activityList = 
            this.http.get('lottery/activity/activity-list', {params: {pageSize: '20'} });
    }
2017年2月25日 07:10
編輯回答
練命

請(qǐng)求是異步的,你在 OnInit 中的同步代碼自然打印不出來。

2017年7月12日 12:22