angular - Angular 7:如何正确地从嵌套响应中获取 this.http.get?
问题描述
我正在做Angular 7教程,想知道如果它们不在顶层但嵌套,如何正确请求项目列表:
顶级(作品)
[
{ id: 123, name: 'Name 123'},
{ id: 124, name: 'Name 124'},
// ...
]
嵌套(不起作用)
{
message: 'x items found.',
data: [
{ id: 123, name: 'Name 123'},
{ id: 124, name: 'Name 124'},
// ...
]
}
服务
// ...
@Injectable({ providedIn: 'root' })
export class ItemService {
private apiUrl = 'api/items'; // items are in .data
constructor(private http: HttpClient) {}
getItems (): Observable<Item[]> {
// Here is the problem:
return this.http.get<Item[]>(this.apiUrl, {
pathToItems: 'data' // <- Pseudocode
});
}
}
零件
// ...
this.itemService.getItems()
.subscribe(items => this.items = items);
我可以subscribe()
在服务中使用并返回 的内容.data
,但我认为应该有一个更简单的解决方案。我需要保留返回类型(数组Item
)。
任何想法?
提前致谢!
解决方案
推荐阅读
- scala - 有没有更好的方法将“嵌套”元组的 Seq 转换为地图层次结构?
- firebase - 如何在 Go 中验证 App Engine 上的 Firebase ID 令牌
- python - 如何连接来自两个 python.py 的变量
- android - Xamarin 形成自定义启动画面
- java - 尽管从文本字段输入,布尔值没有改变
- html - 调整大小时,文本不会在文本上保持固定
- spring-boot - Spring boot WAR 文件在 Eclipse IDE 和终端上成功运行,但未在外部 Tomcat 9.0 上运行
- javascript - 正则表达式确保字符串以数字开头和结尾
- html - CSS - 想要创建一个里面有一些文本的盒子。里面的例子
- sql - 如何按升序对包含数字和字母数字值的 SQL 行进行排序?