【发布时间】:2018-01-31 05:24:38
【问题描述】:
我是 Angular 的新手,所以我需要你的帮助。我正在尝试为我从 data.json 用户列表中单击的每个用户获取一个 ID。所以我有我的用户列表,当我点击其中任何一个时,它会打开一个带有路由器的新页面,女巫工作正常,我可以获得该用户的 ID,但我无法访问他的姓名、年龄和其他要在屏幕上显示的信息,只是 ID。
组件
user: any[];
constructor(
private route: ActivatedRoute,
private usersService: UsersService) {
let id = this.route.snapshot.paramMap.get('id');
if(id) this.usersService.getUsers(id).subscribe(user => this.user = user);}
问题是我的服务中没有getUsers(id) 函数,因为我不知道如何从 json 数据文件中获取 ID。我需要你的帮助来实现这个功能。
data.json
[
{
"id": 1,
"firstName": "Paul",
"surname": "Crowe",
"age": 28,
"gender": "male",
"friends": [
2
]
},
{
"id": 2,
"firstName": "Rob",
"surname": "Fitz",
"age": 23,
"gender": "male",
"friends": [
1,
3
]
} ...
]
服务
getUsers() {
return this.http.get('./assets/data.json').map(array => array);
}
我认为这个 getUsers 不适合拿 ID。所以我需要帮助。
提前致谢!
【问题讨论】:
-
使用必须使用这个关键字例如:this.id
-
有点不清楚你想要什么,..
-
现实世界的应用程序将有一个不同的休息服务返回由给定 ID 标识的 用户,而不是强制您获取所有用户。如果确实不可能,请使用 Array.find() 在用户数组中查找用户。 developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
-
抱歉不清楚。我更新了主题。
-
是的,我只有需要在项目中使用的 data.json 文件。使用该文件,我需要遍历用户并获取我点击的每个用户的信息。