尝试构建Ember时。js示例应用程序调用REST Api并显示结果。我能够调用、获取并显示结果。在组件中,我正在阅读json响应结果。
如何将response data
Map到预定义模型,并在组件中使用它?我在https://guides.emberjs.com/release/models/defining-models/或https://guides.emberjs.com/release/in-depth-topics/making-api-requests/#toc_where-发出api请求
代码详细信息:
1.使用此示例API https://reqres.in/api/users
1.型号:(--更新--)
export default class UserModel extends Model {
@attr('string') id;
@attr('string') firstname;
@attr('string') lastname;
@attr('string') email;
@attr('string') avatar;
}
1.路线:
export default class UsersRoute extends Route {
async model() {
let response = await fetch('https://reqres.in/api/users');
let data = await response.json();
return data.data;
}
}
1.模板:
<UserList
@title="List of Users"
@users={{@model}}
/>
1.组件:
{{#each @users as |user|}}
<tr>
<td>{{user.id}}</td>
<td>{{user.first_name}}</td>
<td>{{user.last_name}}</td>
<td>{{user.email}}</td>
</tr>
{{/each}}
1条答案
按热度按时间mu0hgdu01#
生成用户模型:
ember g model user
生成应用程序适配器和序列化程序:
将API URL添加到适配器:
更新序列化程序:
更新路由以使用Ember Data方法而不是原始
fetch
:最后,您可以使用数据(使用camelcase格式的属性):