[英]Angular 4 - Mapping HTTP JSON Response
我正在嘗試設置一個普通的堆棧程序。 使用郵遞員設置和測試路線和功能。 我對所有路線都得到了正確的答復。 現在,我試圖添加視圖部分,Angular應用程序在內部調用路由。 我正在嘗試設置基本的獲取路線。 以下是我的組件代碼:
import { Component, OnInit } from '@angular/core';
import { UserService } from '../user.service';
@Component({
selector: 'app-user',
templateUrl: './user.component.html',
styleUrls: ['./user.component.css']
})
export class UserComponent implements OnInit {
users: {};
constructor(private userService: UserService) { }
ngOnInit() {
this.getUsers();
}
getUsers() {
this.userService.getAllUsers().subscribe(data => this.users = data);
}
}
並且該服務包含以下代碼:
import { Injectable } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class UserService {
constructor(private http: Http) { }
getAllUsers() {
this.http.get('/api/users')
.map(res => res.json());
}
}
使用郵遞員的路線示例響應如下:
{
"status": true,
"err": null,
"data": [
{
"_id": "59d5db344c46e83a14b94616",
"name": "test"
},
{
"_id": "59d5db3c4c46e83a14b94617",
"name": "hello"
}
]
}
它總是告訴我以下錯誤: Property 'subscribe' does not exist on type 'void'.
我究竟做錯了什么? 有人可以指出我執行此操作的標准方法嗎?
嘗試這個 :
您忘記了返回getAllUsers()
getAllUsers() {
return this.http.get('/api/users')
.map(res => res.json());
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.