如何在angular中迭代泛型接口



我对angular比较陌生。我尝试使用通用接口,以便重用来自其他模型的分页模型。用代码我可以更好地解释。这是我的用户模型代码

export interface IUser{
id: string;
name: string;
email: string;
emailConfirmed: boolean;
twoFactorEnabled: boolean;
lockoutEnabled: boolean;
accessFailedCount: number;
role: string;
roleId: string;}

和这个分页接口模型

export interface IPagination<T> {
success: boolean;
pageIndex: number;
pageSize: number;
count: number;
data: T[];}

这是我的组件类

users:IPagination<IUser[]>;
ngOnInit(): void {this.http.get("https://localhost:7105/api/auth/admin/User").subscribe((response:IPagination<IUser[]>)=>{this.users=response;},error=>{console.log(error);})}

一切工作正常,除了在组件的html当我试图迭代数据这个错误出现

找不到类型为'object'的不同支持对象'[object object]'。NgFor只支持绑定到Iterables,比如Arrays

提前感谢您的帮助

我在api调用中转换接口时犯了一个错误。下面是调用API

的正确方法

ngOnInit(): void {this.http.get("https://localhost: 7105/api/认证/管理/User") .subscribe((反应:IPagination) =祝辞{this.users =响应;},错误=祝辞{console.log(错误);})}

现在它在组件html

中使用这个代码示例
<ul *ngFor="let item of users.data">
<li>{{item.email}}</li>

但我仍然不确定这是否是一个正确的方法?

最新更新