我正在尝试获取请求,以接收可以显示在主要组件上的数据。
main.component.ts
export class MainComponent implements OnInit {
testdata: TestData[];
constructor(private dataService: TestdataService) { }
ngOnInit() {
this.dataService.getData().subscribe(data => {this.testdata = data})
console.log((this.testdata)); <--- undefined
}
testdata.service.ts
export class TestdataService {
url = 'http://localhost:8080/test'
constructor(private http: HttpClient) { }
getData(): Observable<TestData[]>{
return this.http.get<TestData[]>(this.url);
}
}
TestData.ts
export class TestData{
id: number;
teststring: string;
testint: number;
}
除了testdata变量(似乎未定义)之外,一切似乎都可以正常工作。
答案 0 :(得分:2)
您需要将console.log放在订阅中,
this.dataService.getData().subscribe(data => {
this.testdata = data;
console.log(this.testdata);
})