【问题标题】:Type Script Get sychronous data from serverTypescript 从服务器获取同步数据
【发布时间】:2017-05-06 13:49:58
【问题描述】:

我的方法中的控制流有问题。如何等待来自服务器的数据?是否可以在服务的构造函数中准备数据,并在注入后在所有组件中单例获取?

import { Permission } from '../_models/Permission';
import { Injectable, OnInit } from "@angular/core";
import { AuthService, AppHttpService } from '../_services/index';
import { RequestActionType } from '../_models/RequestActionType';


@Injectable()
export class PermissionService {

    private getUrl: string = "/Permission/GetAllPermissions";
    private permissions: Permission[] = [];

    constructor(private httpService: AppHttpService, private authService: AuthService) {

        this.PreparePermissionData();
    }

    public PreparePermissionData() {
        if (this.authService.loggedIn()) {
            this.httpService.authGet(this.getUrl).then(response => {
                this.permissions = response.Data as Permission[];
            });
        }

【问题讨论】:

标签: angular typescript http-get


【解决方案1】:
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import {Observable} from 'rxjs/Observable'

 export class MyService {
   private getUrl:string = "/Data/GetData"
   constructor(private http: Http) { }

   public DoSomething(){
     let myData = [];

     this.http.get(this.getUrl).map(res => res.json()).subscribe(data => {
        this.somethingWithData(data)
     });

  } 
  public somethingWithData(data) {
    //do anything here with data
  }
}

【讨论】:

    【解决方案2】:

    是否可以在服务的构造函数中准备数据,并在注入后在所有组件中以单例形式获取数据?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-08
      • 2016-01-21
      • 1970-01-01
      • 1970-01-01
      • 2016-04-12
      相关资源
      最近更新 更多