我的组件有些像
<div class="users-list" *ngIf="datasetPermission !== undefined">
<div *ngFor="let userpermission of datasetPermission; trackBy : trackByFn">
<span *ngFor="let user of userpermission.users">
<span *ngIf="user">
<span class="shared-user"><span>{{user.emailId}}</span><span ><span class="close icon-key" style=" padding: 0;" (click)="viewPermission($event,userpermission.permissionType,user)"></span><span class="close" style=" padding: 0;" (click)="removeUser(user)">×</span></span></span>
</span>
</span>
</div>
</div>
跟踪按函数作为
public trackByFn(index, userpermission) {
console.log(userpermission.permissionType);
return userpermission.permissionType;
}
在权限中,我有一组分配给此权限的用户。我可以从 x <> y 权限集更新用户。 当我更新 datasetPermission 数组或向其添加新元素时,它正在更新数据集的更新/添加顺序。
我已经浏览了各种帖子,但还没有找到有用的东西。 我在这里做错了什么吗?任何帮助将不胜感激。
trackByFn
的实现错误。
trackBy
function
始终接受两个参数index
和当前item
函数必须返回唯一标识符。
所以你的function
应该是这样的——
public trackByFn(index, userpermission) {
return userpermission.id; //check what unique property you have in permission class.
}